转自:https://blog.csdn.net/u012581453/article/details/53727936
LAST_DAY
LAST_DAY函数返回指定日期对应月份的最后一天。
获取当前日期的最后一天
SQL> SELECT last_day(SYSDATE) FROM dual;
运行结果:
LAST_DAY(SYSDATE)
-----------------
2016/12/31 15:39:
获取当前日期和当前日期所在月的最后一天
SQL> SELECT SYSDATE,
LAST_DAY(SYSDATE) "Last",
LAST_DAY(SYSDATE) - SYSDATE "Days Left"
FROM DUAL;
运行结果:
SYSDATE Last Days Left
----------- ----------- ----------
2016/12/18 2016/12/31 13
获取当前日期所在月的第一天和最后一天:
SQL> SELECT TRUNC(SYSDATE, 'MONTH') FIRSTDAY,
LAST_DAY(TRUNC(SYSDATE, 'MONTH')) LASTDAY
FROM DUAL;
运行结果:
FIRSTDAY LASTDAY
----------- -----------
2016/12/1 2016/12/31
其实这些日期函数我们通常都是用来嵌套使用的,例如下面这个实例:
求当前日期的上个月月初和上个月月末日期
SELECT
TRUNC(add_months(SYSDATE,-1),'mm') AS first_day
,last_day(add_months(SYSDATE,-1)) AS last_day
FROM dual;
运行结果:
FIRST_DAY LAST_DAY
----------- -----------
2016/11/1 2016/11/30