oracle中sql查询上月、本月、上周、本周、昨天、今天的数据!

NEXT_DAY(x,y):

next_day,next_day(x,y)用于计算x时间后第一个星期y的时间。x 是一个时间,y 是星期一至星期日中的一个。也可能用数字1 - 7代替,但是用数字的时候1是代表的周日2才是代表的周一

查询今天数据:

SELECT COUNT(1) FROM  T_TJ_TEST WHERE TO_CHAR(T_RKSJ,'YYYY-MM-DD')=TO_CHAR(SYSDATE,'YYYY-MM-DD');

查询昨天数据:

SELECT COUNT(1) FROM  T_TJ_TEST WHERE TO_CHAR(T_RKSJ,'YYYY-MM-DD')=TO_CHAR(SYSDATE-1,'YYYY-MM-DD');

查询本周数据:

SELECT COUNT(1) FROM  T_TJ_TEST WHERE T_RKSJ >= TRUNC(NEXT_DAY(SYSDATE-8,1)+1) AND T_RKSJ < TRUNC(NEXT_DAY(SYSDATE-8,1)+7)+1;

查询上周数据:

SELECT COUNT(1) FROM  T_TJ_TEST WHERE T_RKSJ >= TRUNC(NEXT_DAY(SYSDATE-8,1)-6) AND T_RKSJ < TRUNC(NEXT_DAY(SYSDATE-8,1)+1);

查询本月数据:

SELECT COUNT(1) FROM T_TJ_TESTWHERE TO_CHAR(T_RKSJ,'YYYY-MM')=TO_CHAR(SYSDATE,'YYYY-MM');

查询上月数据:

SELECT COUNT(1) FROM T_TJ_TESTWHERE TO_CHAR(T_RKSJ,'YYYY-MM')=TO_CHAR(ADD_MONTHS(SYSDATE,-1),'YYYY-MM');

 

你可能感兴趣的:(oracle以及sql)