SQLite 3.38.0 blev frigivet den 2. februar 2022. Med det fulgte en vis forbedring af dato- og tidsfunktionerne.
En af disse forbedringer er tilføjelsen af UNIXEPOCH()
fungere. Denne funktion returnerer et unix-tidsstempel. Det vil sige antallet af sekunder siden 1970-01-01 00:00:00 UTC.
Eksempel
Her er et hurtigt eksempel til demonstration:
SELECT UNIXEPOCH();
Resultat:
1646610077
Så da jeg kørte dette eksempel, havde der været 1646610077 sekunder siden 1970-01-01 00:00:00 UTC.
Funktionen returnerer altid et heltal, selvom inputtidsværdien har millisekunders præcision.
Dette svarer til at gøre følgende:
SELECT STRFTIME('%s');
Resultat:
1646610181
Der gik naturligvis et par sekunder mellem at køre de to ovenstående eksempler, så de er ikke helt ens. Men vi kan se, at de ligner hinanden meget.
Her er resultatet, når de køres på samme tid:
SELECT
UNIXEPOCH(),
STRFTIME('%s');
Resultat:
UNIXEPOCH() STRFTIME('%s') ----------- -------------- 1646610290 1646610290
Præcis det samme.