oracle中的日期函数

MONTHS_BETWEEN():求出给点日期范围的月数

ADD_MONTHS():在指定日期上加上指定的月数之后的日期

NEXT_DAY():下一个的今天是哪一个日期

LAST_DAY():求出给定的日期的最后一天日期

example:SQL>SELECT NEXT_DAY(SYSDATE,'星期一') FROM DUAL;(SYSDATE为5月22日)

NEXT_DAY(SYSDA
--------------
24-5月 -10

SQL>SELECT LAST_DAY(SYSDATE)FROM DUAL;

求出一个日期的最后一天
LAST_DAY(SYSDA
--------------
31-5月 -10

例题:

找出各月倒数第3天受雇的所有员工

SQL> select * from emp where LAST_DAY(hiredate)-2=hiredate;

     EMPNO ENAME      JOB              MGR HIREDATE              SAL       COMM     DEPTNO
---------- ---------- --------- ---------- -------------- ---------- ---------- ----------
      7654 MARTIN     SALESMAN        7698 28-9ÔÂ -81           1250       1400         30

找出早于12年前受雇的员工:条件(MONTHS_BETWEEN()/12,求出总共的月数在除以12)

select * from emp where MONTHS_BETWEEN(sysdate,hiredate)/12 >12 ;

原文地址:https://www.cnblogs.com/Earl/p/1741844.html