last_day() 是一个 MySQL 日期/时间函数,它只接受日期或日期时间值。它用于获取输入日期给定月份的最后一天。如果我们提供无效的输入日期或日期时间,它总是返回一个 NULL 值。
语法
以下是用于返回给定月份的最后一个日期的语法。
mysql> SELECT LAST_DAY(date);
参数说明
date:last_day 函数只接受一个参数,即日期或日期时间,以获取最后一天的日期。
返回值
此函数返回给定有效日期参数的月份的最后一天。如果参数无效,我们将得到一个 NULL 值。
MySQL last_day() 函数示例
让我们借助各种示例了解如何在 MySQL 中使用 last_day() 函数。
示例 1
下面的语句是此函数的一个简单示例,它返回十月的最后一天:
mysql> SELECT LAST_DAY('2019-10-05');
输出:
mysql> SELECT LAST_DAY('2019-10-05');
+------------------------+
| LAST_DAY('2019-10-05') |
+------------------------+
| 2019-10-31 |
+------------------------+
1 row in set (0.04 sec)
示例 2
如果我们想使用日期时间格式获取该月的最后一天,我们可以按以下方式使用 last_day() 函数:
mysql> SELECT LAST_DAY('2019-10-05 10:25:05');
输出:
示例 3
last_day() 函数也可用于获取当前月份的最后一天。我们可以通过将 last_day() 函数与 NOW() 或 CURDATE() 函数结合起来来做到这一点,如下面的语句:
mysql> SELECT LAST_DAY(NOW());
OR,
mysql> SELECT LAST_DAY(CURDATE());
输出:
示例 4
last_day() 函数也可用于获取下个月的最后一天。我们可以通过将当前日期加一个月然后将结果传递给 last_day() 函数来实现。请参阅以下声明:
mysql> SELECT LAST_DAY(CURDATE() + INTERVAL 1 MONTH);
输出:
mysql> SELECT LAST_DAY(CURDATE() + INTERVAL 1 MONTH);
+----------------------------------------+
| LAST_DAY(CURDATE() + INTERVAL 1 MONTH) |
+----------------------------------------+
| 2023-04-30 |
+----------------------------------------+
1 row in set (0.00 sec)