MariaDB LAST_DAY 函数使用指南

在 MariaDB 中,LAST_DAY 是一个内置函数,它返回给定日期的月份的最后一天。

MariaDB LAST_DAY 语法

这是 MariaDB LAST_DAY 函数的语法:

LAST_DAY(date)

参数

date
必需的。一个日期或者日期时间表达式。

如果您不提供参数或提供了错误数量的参数,MariaDB 将报告一个错误:ERROR 1582 (42000): Incorrect parameter count in the call to native function 'LAST_DAY'

返回值

MariaDB LAST_DAY 函数返回指定的日期的月份的最后一天。

如果参数为不合法的日期或者为 NULLLAST_DAY 函数将返回 NULL

MariaDB LAST_DAY 示例

示例 1

这个语句展示了 MariaDB LAST_DAY 函数的基本用法:

SELECT
    LAST_DAY('2020-02-01'),
    LAST_DAY('2021-02-01'),
    LAST_DAY('2022-02-01'),
    LAST_DAY('2023-02-01'),
    LAST_DAY('2022-02-01 10:11:12')\G

输出:

         LAST_DAY('2020-02-01'): 2020-02-29
         LAST_DAY('2021-02-01'): 2021-02-28
         LAST_DAY('2022-02-01'): 2022-02-28
         LAST_DAY('2023-02-01'): 2023-02-28
LAST_DAY('2022-02-01 10:11:12'): 2022-02-28

数字日期

MariaDB LAST_DAY 函数允许您将日期作为数字传递,但是您必须提供一个合法的日期。

SELECT
  LAST_DAY(20230101),
  LAST_DAY(230101);

输出:

+--------------------+------------------+
| LAST_DAY(20230101) | LAST_DAY(230101) |
+--------------------+------------------+
| 2023-01-31         | 2023-01-31       |
+--------------------+------------------+

其他分隔符

MariaDB LAST_DAY() 函数允许您使用各种分隔符构造日期:

SELECT
    LAST_DAY('2023/01/10'),
    LAST_DAY('2023,01!10'),
    LAST_DAY('2023#01%10');

输出:

+------------------------+------------------------+------------------------+
| LAST_DAY('2023/01/10') | LAST_DAY('2023,01!10') | LAST_DAY('2023#01%10') |
+------------------------+------------------------+------------------------+
| 2023-01-31             | 2023-01-31             | 2023-01-31             |
+------------------------+------------------------+------------------------+

当前日期

我们可以传递 NOW() 作为以获取当前月份的最后一天:

SELECT
    NOW(),
    LAST_DAY(NOW());

输出:

+---------------------+-----------------+
| NOW()               | LAST_DAY(NOW()) |
+---------------------+-----------------+
| 2023-01-10 11:16:26 | 2023-01-31      |
+---------------------+-----------------+

结论

在 MariaDB 中,LAST_DAY 是一个内置函数,它返回给定日期的月份的最后一天。