LAST_DAY
Возвращает последний день месяца для указанной даты.
MySQL 8.1
LAST_DAY(date)Параметры
- dateDATE
- Дата или дата со временем
Возвращаемое значение
Дата (DATE) с учётом високосного года; NULL, если значение не распознано как дата
Примеры
Конец месяца для даты
MySQL 8.1
SELECT LAST_DAY('2024-02-10');Конец месяца для платежей
MySQL 8.1
SELECT date,
LAST_DAY(date) AS month_end
FROM Payments;Число дней в месяце
MySQL 8.1
SELECT DAY(LAST_DAY('2023-02-10')) AS days_in_month;Подробности
Первый день месяца получается из последнего дня прошлого месяца: LAST_DAY(date - INTERVAL 1 MONTH) + INTERVAL 1 DAY. В PostgreSQL функции нет, последний день месяца там считают так: DATE_TRUNC('month', date) + INTERVAL '1 month - 1 day'.