Months_between()
months_between函数返回两个日期之间的月份数。如果两个日期月份内天数相同,或者都是某个月的最后一天,返回一个整数,否则,返回数值带小数,以每天1/31月来计算月中剩余天数。
select months_between(sysdate,to_date('2016-05-16','yyyy-MM-dd')) from dual;
Add_months()
ADD_MONTHS是运算函数,函数将一个日期上加上一指定的月份数,所以,日期中的日是不变的
select add_months(sysdate,1) from dual;
Next_day()
(ie: SUNDAY, MONDAY, TUESDAY, WEDNESDAY,THURSDAY, FRIDAY, SATURDAY)
在Oracle是提供了next_day求指定日期的下一个日期.
select next_day(sysdate,'星期一') from dual;
Last_day
last_day是个函数,返回某个时间值的当月最后一天
select last_day(sysdate) from dual;
日期加法
select sysdate,add_months(sysdate,12) fromdual; --加1年
select sysdate,add_months(sysdate,1) fromdual; --加1月
select sysdate,to_char(sysdate+7,'yyyy-mm-dd HH24:MI:SS')from dual; --加1星期
select sysdate,to_char(sysdate+1,'yyyy-mm-dd HH24:MI:SS')from dual; --加1天
select sysdate,to_char(sysdate+1/24,'yyyy-mm-ddHH24:MI:SS') from dual;--加1小时
select sysdate,to_char(sysdate+1/24/60,'yyyy-mm-ddHH24:MI:SS') from dual;--加1分钟select sysdate,to_char(sysdate+1/24/60/60,'yyyy-mm-ddHH24:MI:SS') from dual; --加1秒
日期减法
select sysdate,add_months(sysdate,-12) fromdual; --减1年
select sysdate,add_months(sysdate,-1) fromdual; --减1月
select sysdate,to_char(sysdate-7,'yyyy-mm-dd HH24:MI:SS')from dual; --减1星期selectsysdate,to_char(sysdate-1,'yyyy-mm-dd HH24:MI:SS') from dual; --减1天
select sysdate,to_char(sysdate-1/24,'yyyy-mm-ddHH24:MI:SS') from dual; --减1小时
select sysdate,to_char(sysdate-1/24/60,'yyyy-mm-ddHH24:MI:SS') from dual; --减1分钟select sysdate,to_char(sysdate-1/24/60/60,'yyyy-mm-ddHH24:MI:SS') from dual; --减1秒
网友评论