SQLite 3.38.0 został wydany 2 lutego 2022 r. Wraz z nim przyszło pewne ulepszenie funkcji daty i czasu.
Jednym z tych ulepszeń jest dodanie funkcji UNIXEPOCH() funkcjonować. Ta funkcja zwraca uniksowy znacznik czasu. Oznacza to liczbę sekund od 1970-01-01 00:00:00 UTC.
Przykład
Oto krótki przykład do zademonstrowania:
SELECT UNIXEPOCH(); Wynik:
1646610077
Tak więc, kiedy uruchomiłem ten przykład, od 1970-01-01 00:00:00 UTC upłynęło 1646610077 sekund.
Funkcja zawsze zwraca liczbę całkowitą, nawet jeśli wejściowa wartość czasu ma dokładność do milisekund.
Jest to równoznaczne z wykonaniem następujących czynności:
SELECT STRFTIME('%s'); Wynik:
1646610181
Oczywiście było kilka sekund między uruchomieniem powyższych dwóch przykładów, więc nie są one do końca takie same. Ale widzimy, że są bardzo podobne.
Oto wynik, gdy są uruchamiane w tym samym czasie:
SELECT
UNIXEPOCH(),
STRFTIME('%s'); Wynik:
UNIXEPOCH() STRFTIME('%s')
----------- --------------
1646610290 1646610290 Dokładnie to samo.