DATE()
SQLite Funkce nám poskytuje možnost vrátit datum první instance daného dne v daném měsíci. Můžeme jej tedy použít pro vrácení prvního pondělí daného měsíce. Můžeme jej použít i pro vrácení prvního úterý, středy, čtvrtka, pátku atd.
Můžeme použít DATETIME()
pokud chceme, aby byla vrácena hodnota datetime.
Příklad
SELECT DATE('2025-10-20', 'start of month', 'weekday 1');
Výsledek:
2025-10-06
V tomto případě první pondělí daného měsíce připadá na 2025-10-06.
start of month
a weekday 1
modifikátory upravují datum uvedené u prvního argumentu. Neděle je 0, pondělí je 1, úterý je 2 a tak dále. Proto používáme hodnotu weekday 1
vyberte pondělí.
První pondělí aktuálního měsíce
Tento příklad vás provede procesem s použitím aktuálního data:
SELECT
DATE('now') AS "Now",
DATE('now', 'start of month') AS "Start of Month",
DATE('now', 'start of month', 'weekday 1') AS "First Monday";
Výsledek:
Now Start of Month First Monday ---------- -------------- ------------ 2022-03-09 2022-03-01 2022-03-07
Tento příklad nám ukazuje datum v každé fázi jeho úpravy. Používáme now
vrátíte aktuální datum a poté start of month
přesunout zpět na začátek měsíce, pak weekday 1
přesunout datum dopředu na první pondělí.
DATETIME()
Funkce
Můžeme také použít DATETIME()
funkce dělat to samé. Rozdíl je v tom, že zahrnuje časovou část:
SELECT DATETIME('2025-10-20', 'start of month', 'weekday 1');
Výsledek:
2025-10-06 00:00:00