SQLite 3.38.0 wurde am 2. Februar 2022 veröffentlicht. Damit wurden einige Verbesserungen an den Datums- und Uhrzeitfunktionen vorgenommen.
Eine dieser Verbesserungen ist das Hinzufügen von UNIXEPOCH()
Funktion. Diese Funktion gibt einen Unix-Zeitstempel zurück. Das heißt, die Anzahl der Sekunden seit dem 01.01.1970 00:00:00 UTC.
Beispiel
Hier ist ein kurzes Beispiel zur Veranschaulichung:
SELECT UNIXEPOCH();
Ergebnis:
1646610077
Als ich also dieses Beispiel durchführte, waren seit dem 01.01.1970 00:00:00 UTC 1646610077 Sekunden vergangen.
Die Funktion gibt immer eine Ganzzahl zurück, auch wenn der Eingabezeitwert Millisekunden genau ist.
Dies entspricht dem folgenden Vorgehen:
SELECT STRFTIME('%s');
Ergebnis:
1646610181
Offensichtlich gab es ein paar Sekunden zwischen der Ausführung der beiden obigen Beispiele, also sind sie nicht ganz gleich. Aber wir können sehen, dass sie sich sehr ähnlich sind.
Hier ist das Ergebnis, wenn sie gleichzeitig ausgeführt werden:
SELECT
UNIXEPOCH(),
STRFTIME('%s');
Ergebnis:
UNIXEPOCH() STRFTIME('%s') ----------- -------------- 1646610290 1646610290
Genau das gleiche.