oracle根据日期查询小结

在项目中,常常用到时间方面的查询,针对oracle中的做出一个小结,高手可以忽略,不喜勿喷。欢迎看到的朋友留言补充指正!!!

1.查询今天数据:

select count(*) from tb where TO_CHAR(T_RKSJ,'YYYY-MM-DD')=TO_CHAR(SYSDATE,'YYYY-MM-DD');

2. 查询昨天的数据

select count(*) from tb where TO_CHAR(T_RKSJ,'YYYY-MM-DD')=TO_CHAR(SYSDATE-1,'YYYY-MM-DD');

3. 查询本周的数据

select count(*) from tb where T_RKSJ >= TRUNC(NEXT_DAY(SYSDATE-8,1)+1) AND T_RKSJ < TRUNC(NEXT_DAY(SYSDATE-8,1)+7)+1;

4.查询上周的数据

select count(*) from tb where  T_RKSJ >= TRUNC(NEXT_DAY(SYSDATE-8,1)-6) AND T_RKSJ < TRUNC(NEXT_DAY(SYSDATE-8,1)+1);

5. 查询本月数据

select count(*) from tb where TO_CHAR(T_RKSJ,'YYYY-MM')=TO_CHAR(SYSDATE,'YYYY-MM');

扫描二维码关注公众号,回复: 12725538 查看本文章

6.查询上月数据

select count(*) from tb where TO_CHAR(T_RKSJ,'YYYY-MM')=TO_CHAR(ADD_MONTHS(SYSDATE,-1),'YYYY-MM');

7. oracle查询大于当前日期的数据

select * from t where T_RKSJ> trunc(sysdate);  trunc直接精确到天,截断下面时分秒的数据。

8.查询某天的数据

select * from table_name where trunc(日期字段)=to_date('2018-05-20','yyyy-mm-dd');

随后会继续完善补充。。。

猜你喜欢

转载自blog.csdn.net/duan196_118/article/details/110805679
今日推荐