SQLite 3.38.0 släpptes den 2 februari 2022. Med det kom en del förbättringar av datum- och tidsfunktionerna.
En av dessa förbättringar är tillägget av UNIXEPOCH()
fungera. Denna funktion returnerar en unix-tidsstämpel. Det vill säga antalet sekunder sedan 1970-01-01 00:00:00 UTC.
Exempel
Här är ett snabbt exempel att visa:
SELECT UNIXEPOCH();
Resultat:
1646610077
Så när jag körde det exemplet hade det gått 1646610077 sekunder sedan 1970-01-01 00:00:00 UTC.
Funktionen returnerar alltid ett heltal, även om det inmatade tidsvärdet har millisekundsprecision.
Detta motsvarar att göra följande:
SELECT STRFTIME('%s');
Resultat:
1646610181
Uppenbarligen gick det några sekunder mellan att köra ovanstående två exempel, så de är inte riktigt lika. Men vi kan se att de är väldigt lika.
Här är resultatet när de körs samtidigt:
SELECT
UNIXEPOCH(),
STRFTIME('%s');
Resultat:
UNIXEPOCH() STRFTIME('%s') ----------- -------------- 1646610290 1646610290
Exakt samma sak.