Poniżej znajduje się lista poprawnych modyfikatorów dla funkcji daty i czasu w SQLite.
| Modyfikator | Przykład |
|---|---|
| NNN dni | data('teraz', '+3 dni') |
| NNN godzin | datetime('teraz', '-3 godziny') |
| NNN minut | datetime('teraz', '+3 minuty') |
| NNN.NNNN sekund | datetime('teraz', '-30 sekund') |
| NNN miesięcy | data('teraz', '+3 miesiące') |
| NNN lat | data('teraz', '-3 lata') |
| początek miesiąca | data('teraz', 'początek miesiąca') |
| początek roku | data('teraz', 'początek roku') |
| początek dnia | datetime('teraz', 'początek dnia') |
| dzień tygodnia N | data('teraz', 'dzień 6') |
| unixepoch | datetime(‘1588965525’, ‘unixepoch’) |
| czas lokalny | datetime('teraz', 'czas lokalny') |
| utc | datetime('teraz', 'utc') |
Jak działają te modyfikatory?
Używając jednej z funkcji daty/czasu w SQLite, masz możliwość użycia modyfikatorów do przekształcenia daty dostarczonej do funkcji.
Na przykład możesz użyć modyfikatora, aby dodać liczbę dni, godzin, a nawet minut do podanej daty. Możesz też użyć modyfikatora, aby określić czas UTC, czas lokalny itp.
Przykład
Oto krótki przykład pokazujący wynik użycia powyższych modyfikatorów.
.mode line
SELECT
datetime('now'),
date('now', '+3 days'),
datetime('now', '+3 hours'),
datetime('now', '+3 minutes'),
datetime('now', '+30 seconds'),
date('now', '+3 months'),
date('now', '-3 years'),
date('now', 'start of month'),
date('now', 'start of year'),
datetime('now', 'start of day'),
date('now', 'weekday 6'),
datetime('1588965525', 'unixepoch'),
datetime('now', 'localtime'),
datetime('now', 'utc'); Wynik:
datetime('now') = 2020-04-26 00:53:53
date('now', '+3 days') = 2020-04-29
datetime('now', '+3 hours') = 2020-04-26 03:53:53
datetime('now', '+3 minutes') = 2020-04-26 00:56:53
datetime('now', '+30 seconds') = 2020-04-26 00:54:23
date('now', '+3 months') = 2020-07-26
date('now', '-3 years') = 2017-04-26
date('now', 'start of month') = 2020-04-01
date('now', 'start of year') = 2020-01-01
datetime('now', 'start of day') = 2020-04-26 00:00:00
date('now', 'weekday 6') = 2020-05-02
datetime('1588965525', 'unixepoch') = 2020-05-08 19:18:45
datetime('now', 'localtime') = 2020-04-26 10:53:53
datetime('now', 'utc') = 2020-04-25 14:53:53