mysql 日期时间函数

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'); 

输出:

mysql last_day() 函数

示例 3

last_day() 函数也可用于获取当前月份的最后一天。我们可以通过将 last_day() 函数与 NOW() 或 CURDATE() 函数结合起来来做到这一点,如下面的语句:

mysql> SELECT LAST_DAY(NOW());
        OR,
mysql> SELECT LAST_DAY(CURDATE()); 

输出:

mysql last_day() 函数

示例 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)