MySQL LAST_DAY() Function
The MySQL LAST_DAY() function returns the last day of the month for a given date/datetime value. If the datetime is not a valid date or datetime value, this function returns NULL.
Syntax
LAST_DAY(datetime)
Parameters
datetime |
Required. Specify a date or datetime value from which to extract the last day of the month. |
Return Value
Returns the last day of the month for a given date/datetime value.
Example 1:
The example below shows the usage of LAST_DAY() function.
mysql> SELECT LAST_DAY('2018-08-18'); Result: '2018-08-31' mysql> SELECT LAST_DAY('2018-08-18 10:38:42'); Result: '2018-08-31' mysql> SELECT LAST_DAY('2018-08-18 10:38:42.000004'); Result: '2018-08-31' mysql> SELECT LAST_DAY('2014-10-25'); Result: '2014-10-31' mysql> SELECT LAST_DAY('Date is: 2014-10-25'); Result: NULL mysql> SELECT LAST_DAY(CURDATE()); Result: '2021-12-31'
Example 2:
Consider a database table called Orders with the following records:
OrderQuantity | Price | OrderTime |
---|---|---|
100 | 1.58 | 2017-08-18 10:38:42 |
120 | 1.61 | 2018-03-23 07:14:16 |
125 | 1.78 | 2018-09-12 05:25:56 |
50 | 1.80 | 2019-01-16 11:52:05 |
200 | 1.72 | 2020-02-06 09:31:34 |
The statement given below can be used to get the last day of month specified by values of column OrderTime:
SELECT *, LAST_DAY(OrderTime) AS LAST_DAY_Value FROM Orders;
This will produce the result as shown below:
OrderQuantity | Price | OrderTime | LAST_DAY_Value |
---|---|---|---|
100 | 1.58 | 2017-08-18 10:38:42 | 2017-08-31 |
120 | 1.61 | 2018-03-23 07:14:16 | 2018-03-31 |
125 | 1.78 | 2018-09-12 05:25:56 | 2018-09-30 |
50 | 1.80 | 2019-01-16 11:52:05 | 2019-01-31 |
200 | 1.72 | 2020-02-06 09:31:34 | 2020-02-29 |
❮ MySQL Functions