日期函数(6个函数)
注意(日期的数学运算):
1. 在日期上加上或减去一个数字结果仍为日期。
2. 两个日期相减返回日期之间相差的天数(日期不允许做加法运算,无意义)。
3. 可以用数字除24来向日期中加上或减去天数。
Select MONTHS_BETWEEN (sysdate,to_date('2019-1-1','yyyy-MM-DD')) from dual;
Select ADD_MONTHS (to_date('2019-1-1','yyyy-MM-DD'),6) from dual;
Select NEXT_DAY (to_date('2019-3-26','yyyy-MM-DD'),'星期日') from dual;--该星期的星期天是几号
Select LAST_DAY (to_date('2019-3-26','yyyy-MM-DD')) from dual;--该月最后一天
Select ROUND(to_date('2019-3-27', 'yyyy-MM-DD'),'MONTH') from dual;--该日四舍五入到月份
Select ROUND(to_date('2019-3-27', 'yyyy-MM-DD') ,'YEAR') from dual;--该日四舍五入到年份
Select TRUNC(to_date('2019-3-27', 'yyyy-MM-DD') ,'YEAR') from dual;--截取该月月份
Select TRUNC(to_date('2019-3-27', 'yyyy-MM-DD') ,'YEAR') from dual;--截取该年年份
Select (sysdate-to_date('2018-01-01','yyyy-MM-DD'))/7 as weeks from dual;--(用现在时间减去2018-1-1得到的时间再除以7(星期)便得到了周数)——(本sysdate时间为2019-3-27)
add_months——月份加减
Select sysdate,add_months(sysdate,5) from dual; --(加5个月)
Select sysdate,add_months(sysdate,-5) from dual; --(减5个月)
select sysdate,to_char(sysdate+5,'yyyy-mm-dd HH24:MI:SS') from dual; --(加5天)
select sysdate,to_char(sysdate-5,'yyyy-mm-dd HH24:MI:SS') from dual; --(减5天)
select sysdate,to_char(sysdate-5/24,'yyyy-mm-dd HH24:MI:SS') from dual; --(减5小时)
select sysdate,to_char(sysdate-5/24/60,'yyyy-mm-dd HH24:MI:SS') from dual; --(减5分钟 )
select sysdate,to_char(sysdate-5/24/60/60,'yyyy-mm-dd HH24:MI:SS') from dual; --(减5秒 )
Select to_char(sysdate,'YYYY-MM-DD') from dual;--(年-月-日)
Select to_char(sysdate,'yyyy') from dual;--(年)
Select to_char(sysdate,'Q') from dual;--(季)
Select to_char(sysdate,'MM') from dual;--(月)
Select to_char(sysdate,'DD') from dual;--(日)
Select to_char(sysdate,'D') from dual;--(今天是这个星期的第几天"从星期天开始计算")
Select to_char(sysdate,'DD') from dual;--(今天是这个月的几号)
Select to_char(sysdate,'DDD') from dual;--(今天是今年的多少天)