首页 > 数据库技术 > 详细

Oracle 获取本周、本月、本季、本年的第一天和最后一天

时间:2015-12-23 10:42:19      阅读:280      评论:0      收藏:0      [点我收藏+]

Oracle 获取本周、本月、本季、本年的第一天和最后一天

--本周

select trunc(sysdate, ‘d‘) + 1 from dual;

select trunc(sysdate, ‘d‘) + 7 from dual;

--本月

select trunc(sysdate, ‘mm‘) from dual;

select last_day(trunc(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;

Oracle 获取本周、本月、本季、本年的第一天和最后一天

原文:http://www.cnblogs.com/lovelyp/p/5068968.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!