轉自: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