在 MariaDB 中获取月底最后一天
本文讨论如何在 MariaDB 中使用 LAST_DAY()
函数获取月底最后一天。
发布于
如果想在 MariaDB 中,获取给定日期所在的月份的最后一天,您可以使用 LAST_DAY()
函数。
LAST_DAY()
接受一个日期值或者日期时间值作为参数。如果您传入了错误的值, LAST_DAY()
将返回 NULL
。
简单示例
要获取 2022 年 12 月的最后一天,您可以使用以下语句:
SELECT LAST_DAY('2022-12-01');
输出:
+------------------------+
| LAST_DAY('2022-12-01') |
+------------------------+
| 2022-12-31 |
+------------------------+
您还可以传入一个日期时间值,如下:
SELECT LAST_DAY('2022-12-01 01:01:01');
输出:
+---------------------------------+
| LAST_DAY('2022-12-01 01:01:01') |
+---------------------------------+
| 2022-12-31 |
+---------------------------------+
在本例中,2022 年 12 月的最后一天是 2022-12-31。
获取每月的最后一天
以下语句获取 2022 年的每个月的最后一天:
SELECT
LAST_DAY('2022-01-02') AS "01",
LAST_DAY('2022-02-02') AS "02",
LAST_DAY('2022-03-02') AS "03",
LAST_DAY('2022-04-02') AS "04",
LAST_DAY('2022-05-02') AS "05",
LAST_DAY('2022-06-02') AS "06",
LAST_DAY('2022-07-02') AS "07",
LAST_DAY('2022-08-02') AS "08",
LAST_DAY('2022-09-02') AS "09",
LAST_DAY('2022-10-02') AS "10",
LAST_DAY('2022-11-02') AS "11",
LAST_DAY('2022-12-02') AS "12"\G
输出:
01: 2022-01-31
02: 2022-02-28
03: 2022-03-31
04: 2022-04-30
05: 2022-05-31
06: 2022-06-30
07: 2022-07-31
08: 2022-08-31
09: 2022-09-30
10: 2022-10-31
11: 2022-11-30
12: 2022-12-31
数据库示例
这个示例使用来自 Sakila 示例数据库中的 staff
表进行演示:
下面的语句获取最后更新时间所在的月份:
SELECT
last_update,
LAST_DAY(last_update)
FROM staff;
输出:
+---------------------+-----------------------+
| last_update | LAST_DAY(last_update) |
+---------------------+-----------------------+
| 2006-02-15 03:57:16 | 2006-02-28 |
| 2006-02-15 03:57:16 | 2006-02-28 |
+---------------------+-----------------------+
结论
在 MariaDB 中,你可以使用 LAST_DAY()
函数获取月底最后一天。