V MySQL můžete použít WEEKDAY() funkce pro vrácení indexu dne v týdnu pro dané datum. Jednoduše zadejte datum jako argument a funkce vrátí index dne v týdnu.
Syntaxe
Syntaxe vypadá takto:
WEEKDAY(date)
Kde date je datum, ze kterého chcete vrátit den v týdnu.
Příklad 1 – Základní použití
Zde je příklad k demonstraci.
SELECT WEEKDAY('2021-01-21') AS 'Weekday';
Výsledek:
+---------+ | Weekday | +---------+ | 3 | +---------+
Příklad 2 – Porovnání s DAYNAME()
Abychom nám usnadnili ověřování výsledků, spouštím zde obě WEEKDAY() a DAYNAME() funkce vedle sebe.
SET @date = '2021-01-21'; SELECT DAYNAME(@date) AS 'Day Name', WEEKDAY(@date) AS 'Weekday';
Výsledek:
+----------+---------+ | Day Name | Weekday | +----------+---------+ | Thursday | 3 | +----------+---------+
Index dne v týdnu
Pokud vás zajímá, proč je čtvrtek pouze 3. den v týdnu, takto se počítá index dne v týdnu:
| Index | Den v týdnu |
|---|---|
| 0 | pondělí |
| 1 | úterý |
| 2 | středa |
| 3 | Čtvrtek |
| 4 | Pátek |
| 5 | Sobota |
| 6 | Neděle |