类别:

日期和时间函数

LAST_DAY

返回日期或时间戳的指定日期部分的最后一天。此函数常用于返回日期或时间戳当月最后一天。

另请参阅:

NEXT_DAYPREVIOUS_DAY

语法

LAST_DAY( <date_or_timetamp_expr> [ , <date_part> ] )
Copy

实参

date_or_timestamp_expr

日期、时间戳或计算结果为日期或时间戳的表达式。

date_part

返回最后一天的日期部分。可能的值包括 yearquartermonthweek`(或任何支持的变体)。有关更多信息,请参阅 :ref:`label-supported-date-time-parts

date_partweek`(或其任何变体)时,输出由 :ref:`label-week_start 会话参数控制。有关更多详细信息(包括示例),请参阅 日历周和工作日

有关更多信息(包括示例),请参阅 日历周和工作日

默认值:month

返回

该函数返回类型为 DATE 的值,即使 date_or_timetamp_expr 是时间戳也是如此。

示例

返回指定日期的当月最后一天(根据时间戳):

SELECT TO_DATE('2025-05-08T23:39:20.123-07:00') AS "DATE",
       LAST_DAY("DATE") AS "LAST DAY OF MONTH";
Copy
+------------+-------------------+
| DATE       | LAST DAY OF MONTH |
|------------+-------------------|
| 2025-05-08 | 2025-05-31        |
+------------+-------------------+

返回指定日期当年最后一天(从根据时间戳):

SELECT TO_DATE('2024-05-08T23:39:20.123-07:00') AS "DATE",
       LAST_DAY("DATE", 'year') AS "LAST DAY OF YEAR";
Copy
+------------+------------------+
| DATE       | LAST DAY OF YEAR |
|------------+------------------|
| 2024-05-08 | 2024-12-31       |
+------------+------------------+
语言: 中文