W MySQL możesz użyć WEEKDAY() funkcja zwracająca indeks dnia tygodnia dla podanej daty. Po prostu podaj datę jako argument, a funkcja zwróci indeks dnia tygodnia.
Składnia
Składnia wygląda tak:
WEEKDAY(date)
Gdzie date to data, z której chcesz zwrócić dzień tygodnia.
Przykład 1 – Podstawowe użycie
Oto przykład do zademonstrowania.
SELECT WEEKDAY('2021-01-21') AS 'Weekday';
Wynik:
+---------+ | Weekday | +---------+ | 3 | +---------+
Przykład 2 – Porównanie z DAYNAME()
Aby ułatwić nam weryfikację wyników, tutaj uruchamiam zarówno WEEKDAY() i DAYNAME() działają obok siebie.
SET @date = '2021-01-21'; SELECT DAYNAME(@date) AS 'Day Name', WEEKDAY(@date) AS 'Weekday';
Wynik:
+----------+---------+ | Day Name | Weekday | +----------+---------+ | Thursday | 3 | +----------+---------+
Indeks dni tygodnia
Jeśli zastanawiasz się, dlaczego czwartek jest tylko trzecim dniem tygodnia, oto sposób obliczania indeksu dni tygodnia:
| Indeks | Dzień tygodnia |
|---|---|
| 0 | Poniedziałek |
| 1 | Wtorek |
| 2 | środa |
| 3 | Czwartek |
| 4 | Piątek |
| 5 | Sobota |
| 6 | Niedziela |