MySQL 8.4
WEEKDAY(date)- date
- Дата или дата со временемDATE
Возвращаемое значение
Целое число от 0 до 6, где 0 — понедельник, 6 — воскресенье; NULL для неполной даты и нераспознанного значения
Примеры
Понедельник и воскресенье
MySQL 8.4
SELECT WEEKDAY('2024-01-01') AS monday,
WEEKDAY('2024-01-07') AS sunday;Платежи по дням недели
MySQL 8.4
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).