Jeśli masz uniksowy znacznik czasu, możesz użyć funkcji DATETIME()
SQLite funkcja z unixepoch
modyfikator, aby obliczyć aktualną datę i godzinę.
Możesz alternatywnie użyć DATE()
funkcja, jeśli potrzebujesz tylko daty do zwrotu. Możliwe jest również użycie funkcji TIME()
funkcja zwraca tylko część czasu.
Pobierz datę i godzinę
Oto przykład użycia DATETIME()
funkcja z unixepoch
modyfikator:
SELECT DATETIME(1793956207, 'unixepoch');
Wynik:
2026-11-06 09:10:07
Pobierz datę
Możemy użyć DATE()
funkcja, jeśli potrzebujemy tylko daty do zwrócenia:
SELECT DATE(1793956207, 'unixepoch');
Wynik:
2026-11-06
Zdobądź czas
Korzystanie z TIME()
funkcja zwraca tylko część czasu:
SELECT TIME(1793956207, 'unixepoch');
Wynik:
09:10:07
Odszkodowanie za lokalną strefę czasową
Możesz także dodać localtime
modyfikator, aby dostosować wyjście do lokalnej strefy czasowej:
SELECT DATETIME(1793956207, 'unixepoch', 'localtime');
Wynik:
2026-11-06 19:10:07
localtime
modyfikator zakłada, że określona wartość czasu jest w uniwersalnym czasie koordynowanym (UTC) i dostosowuje tę wartość czasu tak, aby była w localtime
.
auto
Modyfikator
Z SQLite 3.38.0 możemy użyć auto
modyfikator zamiast unixepoch
modyfikator:
SELECT DATETIME(1793956207, 'auto');
Wynik:
2026-11-06 09:10:07
Modyfikator auto powoduje, że wartość jest interpretowana jako numer dnia juliańskiego lub uniksowy znacznik czasu, w zależności od rzeczywistej wartości.
Jeśli wartość jest pomiędzy 0.0
i 5373484.499999
, wówczas jest interpretowany jako numer dnia juliańskiego (odpowiadający datom między -4713-11-24 12:00:00
i 9999-12-31 23:59:59
, włącznie). Dla wartości numerycznych spoza zakresu prawidłowych numerów dni juliańskich, ale z zakresu -210866760000
do 253402300799
, auto
modyfikator powoduje, że wartość jest interpretowana jako uniksowy znacznik czasu. Inne wartości liczbowe są poza zakresem i powodują zwrócenie wartości NULL.