Oracle关于一周内数据查询(DATE)

版权声明:本文由版主林子懿亲自编写,请勿转载!php讨论群-511807472 https://blog.csdn.net/ldTrueLove/article/details/68484871

TRUNC的用法:

1.select trunc(sysdate) from dual --2013-01-06 今天的日期为2013-01-06

2.select trunc(sysdate, 'mm') from dual --2013-01-01 返回当月第一天.

3.select trunc(sysdate,'yy') from dual --2013-01-01 返回当年第一天

4.select trunc(sysdate,'dd') from dual --2013-01-06 返回当前年月日

5.select trunc(sysdate,'yyyy') from dual --2013-01-01 返回当年第一天

6.select trunc(sysdate,'d') from dual --2013-01-06 (星期天)返回当前星期的第一天

7.select trunc(sysdate, 'hh') from dual --2013-01-06 17:00:00 当前时间为17:35

8.select trunc(sysdate, 'mi') from dual --2013-01-06 17:35:00 TRUNC()函数没有秒的精确


中国的日期是由国外演变而来的。

因此0代表的是周日

当前系统时间的下一星期一的时间select   next_day(sysdate,1)   from   dual 

我想查询上周二到这周一的数据:

SELECT
    TRUNC (NEXT_DAY(SYSDATE - 8, 1) - 5),
    TRUNC (SYSDATE, 'd') + 1
FROM
    T_PRICE_INDEX;

此处主要是前面的next_day函数, -8为上个星期,1表示从上个星期-8天往后推的第一天,即星期日,-5表示为了适应中国的习惯,第二天为星期二,所以一般来说是+2,这里要-5是要表示上个星期

三年内:
DATE_PRICE > TRUNC (SYSDATE) - (INTERVAL '3' YEAR)
三周内:
TO_DATE (DATE_STOCK) > TO_DATE (ADD_MONTHS(SYSDATE ,- 3))



猜你喜欢

转载自blog.csdn.net/ldTrueLove/article/details/68484871
今日推荐