ORACLE 常用日期函数
清泛原创
ADD_MONTHS函数在输入日期上加上指定的几个月返回一个新的日期。如果给出一负数,返回值日期之前几个月日期。
select add_months(to_date('20150201','yyyymmdd'), -1) from dual
结果:2015/1/1
相应的,加减天数add_days函数是不存在的,直接用+、-即可,例如:
select to_date('20150201','yyyymmdd')+1 from dual
结果:2015/2/2
当月最后一天
select last_day(to_date('20150201','yyyymmdd')) from dual
结果:2015/2/28
(2015/2/1的下周一的日期,周日~周六分别为1-7)
select next_day(to_date('20150201','yyyymmdd'), 2) from dual
结果:2015/2/2 (周一)
两个日期相隔的月数(不取整)
select months_between(to_date('20150215','yyyymmdd'), to_date('20150501','yyyymmdd')) from dual
结果:-2.54838709677419
截取日期
select trunc(to_date('20150205','yyyymmdd'), 'year') from dual
结果:2015/1/1
select trunc(to_date('20150205','yyyymmdd'), 'month') from dual
结果:2015/2/1
select trunc(to_date('20150205','yyyymmdd'), 'day') from dual
结果:2015/2/1
select add_months(to_date('20150201','yyyymmdd'), -1) from dual
结果:2015/1/1
相应的,加减天数add_days函数是不存在的,直接用+、-即可,例如:
select to_date('20150201','yyyymmdd')+1 from dual
结果:2015/2/2
当月最后一天
select last_day(to_date('20150201','yyyymmdd')) from dual
结果:2015/2/28
(2015/2/1的下周一的日期,周日~周六分别为1-7)
select next_day(to_date('20150201','yyyymmdd'), 2) from dual
结果:2015/2/2 (周一)
两个日期相隔的月数(不取整)
select months_between(to_date('20150215','yyyymmdd'), to_date('20150501','yyyymmdd')) from dual
结果:-2.54838709677419
截取日期
select trunc(to_date('20150205','yyyymmdd'), 'year') from dual
结果:2015/1/1
select trunc(to_date('20150205','yyyymmdd'), 'month') from dual
结果:2015/2/1
select trunc(to_date('20150205','yyyymmdd'), 'day') from dual
结果:2015/2/1
上一篇:Plsqldev SQL含中文查无结果
下一篇:Oracle取前N条记录方法 Oracle实现SELECT TOP N的方法