写在前面

在使用Oracle数据开发的时候,经常会使用到Oracle的日期的查询。

以下总结有关Oracle日期查询相关。

一、年、月、日、季、周

1.年

SELECT TO_CHAR(SYSDATE,'YYYY')||'年' FROM DUAL;

2.月

SELECT TO_CHAR(SYSDATE,'MM')||'月' FROM DUAL;

3.日

SELECT TO_CHAR(SYSDATE,'DD')||'日' FROM DUAL;

4.季

SELECT TO_CHAR(SYSDATE,'Q')||'季' FROM DUAL;

5.周

SELECT TO_CHAR(SYSDATE,'IW')||'周' FROM DUAL;

二、EXTRACT 年、月、日

1.年

SELECT EXTRACT(YEAR FROM SYSDATE)||'年' FROM DUAL;

2.月

SELECT EXTRACT(MONTH FROM SYSDATE)||'月' FROM DUAL;

3.日

SELECT EXTRACT(DAY FROM SYSDATE)||'日' FROM DUAL;

三、上个星期一到星期天

SELECT
TO_CHAR(SYSDATE,'yyyymmdd')-TO_NUMBER(TO_CHAR(SYSDATE,'d')-1)-6,
TO_CHAR(SYSDATE,'yyyymmdd')-TO_NUMBER(TO_CHAR(SYSDATE,'d')-1) FROM DUAL;

四、1分钟前、1小时前、1月前、1年前

1.一分钟前

SELECT TO_CHAR(SYSDATE-INTERVAL '1' MINUTE,'YYYY-MM-DD HH24:MI:SS') FROM DUAL;

2.1小时前

SELECT TO_CHAR(SYSDATE-INTERVAL '1' HOUR,'YYYY-MM-DD HH:24:MI:SS') FROM DUAL;

3.1月前

SELECT TO_CHAR(SYSDATE-INTERVAL '1' DAY,'YYYY-MM-DD HH:24:MI:SS') FROM DUAL;

4.1年前

SELECT TO_CHAR(SYSDATE-INTERVAL '1' YEAR,'YYYY-MM-DD HH24:MI:SS') FROM DUAL;

五、当月、上月、当天、前天

1.当月

SELECT TO_CHAR(ADD_MONTHS(SYSDATE,0),'YYYY-MM-DD') FROM DUAL;

2.上月

SELECT TO_CHAR(ADD_MONTHS(SYSDATE,-1),'YYYY-MM-DE') FROM DUAL;

3.当天

SELECT TO_CHAR(SYSDATE,'YYYY-MM-DD') FROM DUAL;

4.前天

SELECT TOCHAR(SYSDATE-1,'YYYY-MM-DD') FROM DUAL;

有关Oracle 查询时间的记录 (1)的更多相关文章

  1. Oracle查询库中记录数大于2千万的所有表

    Oracle查询库中记录数大于2千万的所有表 假如当前用户拥有select any table权限,则可以使用下列sql语句: select table_name, num_rows from dba ...

  2. oracle查询时间

    oracle查询和时间有关的命令: 方法一:select * from dual where time between to_date('2012-06-18 00:00:00','yyyy-mm-d ...

  3. Oracle 查询时间在当天的数据

    要实现这个功能需要用到trunc这个函数对时间的操作 select trunc(sysdate) from dual --2014-12-27 今天的日期为2014-12-27 select trun ...

  4. ORACLE查询删除重复记录

     比如现在有一人员表 (表名:peosons) 若想将姓名.身份证号.住址这三个字段完全相同的记录查询出来 复制代码 代码如下: select p1.*   from persons  p1,pers ...

  5. ORACLE查询删除重复记录三种方法

    本文列举了3种删除重复记录的方法,分别是rowid.group by和distinct,小伙伴们可以参考一下.   比如现在有一人员表 (表名:peosons) 若想将姓名.身份证号.住址这三个字段完 ...

  6. Oracle查询DQL脚本记录

    --查询列 Select t.sname,t.ssex,t.class from student t --t 别名; Select *from student t; --* 代表查询表内所有数据 '; ...

  7. Oracle查询时间字段并排序

    select * from geimstatus_history twhere to_date(t.data_time,'YYYY-mm-dd') = to_date(sysdate,'YYYY-mm ...

  8. oracle 根据时间字段查询

    oracle 根据时间字段查询数据 ROWNUM 是对前面查询的记录做限制,比如查询的记录 > 2000 条,那么只取前面的 2000 条 ''' SELECT * FROM (SELECT C ...

  9. oracle中根据当前记录查询前一条和后一条记录

    select * from aa01_2014 where aaa001=(select c.p from (select aaa001,lag(aaa001,1,0)  over (order by ...

随机推荐

  1. SqlServer数据库之给表添加序号

    简单给查询表添加序号 SELECT row_number() over(order by inserttime asc) as id,* FROM [RecordDrawScore]

  2. [PHP] 广度优先搜索匹配网站所有链接

    <?php define('PRE_DOMAIN','www'); define('DOMAIN','sina.com.cn'); define('PROTOCOL','https'); def ...

  3. STM32F429驱动SDRAM

    1 SDRAM控制原理 1.1 SDRAM信号线 1.2 SDRAM地址线 SDRAM包含有“A”以及“BA”两类地址线: A:行(Row)与列(Column)共用的地址线 BA:独立的用于指定SDR ...

  4. [基础]斯坦福cs231n课程视频笔记(一) 图片分类之使用线性分类器

    线性分类器的基本模型: f = Wx Loss Function and Optimization 1. LossFunction 衡量在当前的模型(参数矩阵W)的效果好坏 Multiclass SV ...

  5. 第13节-BLE协议L2CAP层

    学习资料:官方手册 Vol 3: Core System Package [Host volume] Part A: Logical Link Control and Adaptation Proto ...

  6. 2019面向对象程序设计(Java) 第17周-18周学习指导及要求

    2019面向对象程序设计(Java)第17周-18周学习指导及要求 (2019.12.20-2019.12.31)   学习目标 (1) 理解和掌握线程的优先级属性及调度方法: (2) 掌握线程同步的 ...

  7. yield_from

    python3.3 新加的yield from 语句 1.yield from def my_chain(*args, **kwargs): for my_iterable in args: yiel ...

  8. Git 创建点开头的文件和目录

    Git 创建点开头的文件和目录 # 创建 .gitignore 文件 1@DESKTOP-3H9092J MINGW64 /e/x1/x1/demo1 (master) $ echo .idea &g ...

  9. 生产器&迭代器

    生成器 列表生成器:简洁代码 >>> a = [i+1 for i in range(10)] >>> a [1, 2, 3, 4, 5, 6, 7, 8, 9, ...

  10. BERT

    推出一个半月,斯坦福SQuAD问答榜单前六名都在使用BERT   BERT 成为了你做 NLP 时不得不用的模型了……吗? 今日,机器之心小编在刷 Twitter 时,发现斯坦福自然语言处理组的官方账 ...