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.