MySQL 8.1
WEEKDAY(date)Параметры
- dateDATE
- Дата или дата со временем
Возвращаемое значение
Целое число от 0 до 6, где 0 — понедельник, 6 — воскресенье; NULL для неполной даты и нераспознанного значения
Примеры
Понедельник и воскресенье
MySQL 8.1
SELECT WEEKDAY('2024-01-01') AS monday,
WEEKDAY('2024-01-07') AS sunday;Платежи по дням недели
MySQL 8.1
SELECT WEEKDAY(date) + 1 AS weekday_from_monday,
COUNT(*) AS payments
FROM Payments
GROUP BY weekday_from_monday
ORDER BY weekday_from_monday;Подробности
Нумерация отличается от DAYOFWEEK: там неделя начинается с воскресенья и счёт идёт с 1. WEEKDAY(date) + 1 даёт привычные номера от 1 (понедельник) до 7 (воскресенье). В PostgreSQL то же даёт EXTRACT(ISODOW FROM date).