在日期上加上或减去一个数字结果仍为日期。
两个日期相减返回日期之间相差的天数。
可以用数字除24来向日期中加上或减去小时。
1 SQL> select sysdate ,sysdate+2 from dual; 2 3 SYSDATE SYSDATE+2 4 ----------- ----------- 5 2014-12-23 2014-12-25 6 7 SQL> select hiredate,sysdate-hiredate from emp; 8 9 HIREDATE SYSDATE-HIREDATE10 ----------- ----------------11 1980-12-17 12424.809432870412 1981-2-20 12359.809432870413 1981-2-22 12357.809432870414 1981-4-2 12318.809432870415 1981-9-28 12139.809432870416 1981-5-1 12289.809432870417 1981-6-9 12250.809432870418 1981-11-17 12089.809432870419 1981-9-8 12159.809432870420 1981-12-3 12073.809432870421 1981-12-3 12073.809432870422 1982-1-23 12022.809432870423 24 13 rows selected25
MONTHS_BETWEEN-----两个日期相差的月数
ADD_MONTHS ------向指定日期中加上若干月数
NEXT_DAY ------指定日期的下一个日期
LAST_DAY -----本月的最后一天
ROUND -----日期四舍五入
TRUNC -----日期截断
1 SQL> select sysdate,add_months(sysdate,2) from dual; 2 3 SYSDATE ADD_MONTHS(SYSDATE,2) 4 ----------- --------------------- 5 2014-12-23 2015-2-23 下午 07:30:25 6 7 SQL> select sysdate,add_months(sysdate,2) from dual; 8 9 SYSDATE ADD_MONTHS(SYSDATE,2)10 ----------- ---------------------11 2014-12-23 2015-2-23 下午 07:30:2512 13 SQL> select sysdate,next_day(sysdate,'星期一') from dual;14 15 SYSDATE NEXT_DAY(SYSDATE,'星期一')16 ----------- --------------------------17 2014-12-23 2014-12-29 下午 07:31:3418 19 SQL> select sysdate, last_day(sysdate) from dual;20 21 SYSDATE LAST_DAY(SYSDATE)22 ----------- -----------------23 2014-12-23 2014-12-31 下午 07:24 25 26 SQL> select round(sysdate,'month'),trunc(sysdate,'month') from dual;27 28 ROUND(SYSDATE,'MONTH') TRUNC(SYSDATE,'MONTH')29 ---------------------- ----------------------30 2015-1-1 2014-12-1