Последнее обновление
LAST_DAY
Описание
Возвращает последний день месяца, к которому относится входная дата. В зависимости от месяца последним днём будет:
- 28-е: в феврале обычного (невисокосного) года
- 29-е: в феврале високосного года
- 30-е: в апреле, июне, сентябре, ноябре
- 31-е: в январе, марте, мае, июле, августе, октябре, декабре
Эта функция работает так же, как функция LAST_DAY в MySQL.
Синтаксис
LAST_DAY(`<date_or_time_expr>`)
Аргументы
| Параметр | Описание |
|---|---|
<date_or_time_expr> | Допустимое выражение типа DATE, DATETIME или TIMESTAMP_NS. |
Возвращаемое значение
Возвращает значение типа DATE, соответствующее последнему дню месяца входной даты (формат YYYY-MM-DD).
- Если входное значение равно
NULL, возвращаетNULL.
Примеры
-- Input is DATE; returns the last day of February in a leap year
mysql> SELECT LAST_DAY('2000-02-03');
+------------------------+
| LAST_DAY('2000-02-03') |
+------------------------+
| 2000-02-29 |
+------------------------+
-- Input is DATETIME; time part is ignored
mysql> SELECT LAST_DAY('2023-04-15 12:34:56');
+---------------------------------+
| LAST_DAY('2023-04-15 12:34:56') |
+---------------------------------+
| 2023-04-30 |
+---------------------------------+
-- February in a common (non‑leap) year
mysql> SELECT LAST_DAY('2021-02-01');
+------------------------+
| LAST_DAY('2021-02-01') |
+------------------------+
| 2021-02-28 |
+------------------------+
-- Example of a 31‑day month
mysql> SELECT LAST_DAY('2023-01-10');
+------------------------+
| LAST_DAY('2023-01-10') |
+------------------------+
| 2023-01-31 |
+------------------------+
-- Input is NULL; returns NULL
mysql> SELECT LAST_DAY(NULL);
+----------------+
| LAST_DAY(NULL) |
+----------------