oracle 比较时间
Oracle 获取本周、本月、本季、本年的第一天和最后一天
(转http://you-java.iteye.com/blog/1431534
--本周的第一天'星期天'
SELECT trunc(sysdate,'d') FROM dual ;
--本周末
SELECT trunc(sysdate,'d')+6 FROM dual;
--本周的月初
SELECT trunc(sysdate,'mm') FROM dual ;
--本月末
SELECT trunc (last_day(sysdate)) FROM dual;
-- 本季度开始
SELECT trunc(sysdate,'Q') FROM dual;
-- 本季度结束
select add_months(trunc(sysdate,'Q'),3)-1 from dual;
--年初
SELECT trunc(sysdate ,'yyyy') FROM dual;
--年末
SELECT add_months(trunc(sysdate,'yyyy'),12)-1 FROM dual;
--?获取上月的开始时间和结束时间
select to_char(to_date(to_char(add_months(sysdate, -1), 'yyyy-mm'),'yyyy-mm'),'yyyy-mm-dd?hh24:mi:ss') from dual;
select to_char(to_date(to_char(sysdate,'yyyy-mm'), 'yyyy-mm'),'yyyy-mm-dd?hh24:mi:ss') from dual;
--?获取前一天的开始时间和结束时间
select to_char(to_date(to_char(sysdate - 1, 'yyyy-mm-dd'), 'yyyy-mm-dd'),'yyyy-mm-dd hh24:mi:ss')
from dual;
select to_char(to_date(to_char(sysdate, 'yyyy-mm-dd'), 'yyyy-mm-dd'),'yyyy-mm-dd hh24:mi:ss')
from dual;
-- 获取上一个小时的开始时间和结束时间
select to_date(to_char(sysdate, 'yyyy-mm-dd') || (to_char(sysdate, 'hh24') - 1),'yyyy-mm-dd hh24')
from dual;
select to_date(to_char(sysdate, 'yyyy-mm-dd') || (to_char(sysdate, 'hh24')),'yyyy-mm-dd hh24')
from dual;