📜  MySQL last_day()函数

📅  最后修改于: 2020-11-20 00:54:34             🧑  作者: Mango

MySQL日期/时间last_day()函数

last_day()是一个MySQL日期/时间函数,仅接受日期或datetime值。它用于获取指定日期的给定月份的最后一天。如果我们提供了无效的输入日期或日期时间,则它总是返回NULL值。

句法

以下是用于返回给定月份的最后日期的语法。

mysql> SELECT LAST_DAY(date); 

参数说明

日期:last_day函数仅接受一个参数,即date或datetime,以获取最后一天的日期。

返回值

此函数返回给定有效日期参数的月份的最后一天。如果参数无效,我们将获得一个NULL值。

MySQL last_day()函数示例

让我们借助各种示例来了解如何在MySQL中使用last_day()函数。

例子1

下面的语句是此函数的简单示例,该函数返回十月份的最后一天:

mysql> SELECT LAST_DAY('2019-10-05');

请参见下面的输出图像:

例子2

如果要使用datetime格式获取月份的最后日期,可以按以下方式使用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);

请参见下面的输出图像:

例子5

MySQL不提供获取输入日期的第一天的函数。但是,我们可以使用last_day()函数获取给定日期的第一天。我们可以使用以下几点来做到这一点:

  • 获取给定日期的月份的最后一天。
  • 然后,使用date_add()函数添加一天以获得下个月的第一个日期。
  • 最后,从结果中减去一个月以返回给定日期的月份的第一天。

以下语句说明了如何获取给定日期的月份的第一天。

SELECT DATE_ADD(DATE_ADD(LAST_DAY('2020-01-15'), 
INTERVAL 1 DAY), INTERVAL - 1 MONTH) AS first_day;

请参见下面的输出图像: