SQLite 3.38.0 est sorti le 2 février 2022. Il s'accompagne d'une amélioration des fonctions de date et d'heure.
L'une de ces améliorations est l'ajout de UNIXEPOCH()
une fonction. Cette fonction renvoie un horodatage unix. C'est-à-dire le nombre de secondes depuis le 1970-01-01 00:00:00 UTC.
Exemple
Voici un exemple rapide pour illustrer :
SELECT UNIXEPOCH();
Résultat :
1646610077
Ainsi, lorsque j'ai exécuté cet exemple, il y avait eu 1646610077 secondes depuis le 1970-01-01 00:00:00 UTC.
La fonction renvoie toujours un entier, même si la valeur de temps d'entrée a une précision en millisecondes.
Cela équivaut à faire ce qui suit :
SELECT STRFTIME('%s');
Résultat :
1646610181
Évidemment, il y avait quelques secondes entre l'exécution des deux exemples ci-dessus, donc ils ne sont pas tout à fait les mêmes. Mais nous pouvons voir qu'ils sont très similaires.
Voici le résultat lorsqu'ils sont exécutés en même temps :
SELECT
UNIXEPOCH(),
STRFTIME('%s');
Résultat :
UNIXEPOCH() STRFTIME('%s') ----------- -------------- 1646610290 1646610290
Exactement pareil.