Dans MySQL, vous pouvez utiliser le UNIX_TIMESTAMP()
fonction pour renvoyer un horodatage Unix. Un horodatage Unix correspond au nombre de secondes qui se sont écoulées depuis '1970-01-01 00:00:00' UTC.
Vous pouvez utiliser cette fonction pour renvoyer un horodatage Unix basé sur la date/heure actuelle ou une autre date/heure spécifiée.
Syntaxe
Vous pouvez utiliser l'un des formulaires suivants :
UNIX_TIMESTAMP() UNIX_TIMESTAMP(date)
La date
(facultatif) L'argument vous permet de spécifier une date pour laquelle calculer l'horodatage Unix. Si elle est fournie, la fonction renvoie la valeur de l'argument en secondes depuis '1970-01-01 00:00:00' UTC.
La date
l'argument peut être une date , dateheure , ou horodatage ou un nombre au format AAMMJJ, AAMMJJHHMMSS, AAAAMMJJ ou AAAAMMJJHHMMSS.
La valeur de retour est un entier si aucun argument n'est donné ou si l'argument n'inclut pas de fraction de seconde, ou décimal si un argument est donné qui inclut une fraction de seconde.
Exemple 1 - Utilisation de la date/heure actuelle
Cet exemple utilise la date et l'heure actuelles pour produire l'horodatage Unix.
SELECT UNIX_TIMESTAMP();
Résultat :
+------------------+ | UNIX_TIMESTAMP() | +------------------+ | 1530054626 | +------------------+
Voilà donc combien de secondes se sont écoulées depuis 00:00:00 Temps universel coordonné (UTC), jeudi 1er janvier 1970, et l'heure à laquelle j'ai exécuté cette requête.
Exemple 2 - Spécifiez une date
Dans cet exemple, je fournis une date à partir de laquelle calculer l'horodatage Unix.
SELECT UNIX_TIMESTAMP('1970-01-02') As Result;
Résultat :
+--------+ | Result | +--------+ | 50400 | +--------+
Exemple 3 - Spécifier une valeur DateHeure
Dans cet exemple, je fournis une valeur datetime.
SELECT UNIX_TIMESTAMP('2021-11-27 12:35:03') AS Result;
Résultat :
+------------+ | Result | +------------+ | 1637980503 | +------------+
Exemple 4 – Fraction de seconde
Comme mentionné, si vous fournissez une fraction de seconde, la valeur de retour sera un décimal valeur (par opposition à entier pour les exemples précédents).
Voici un exemple.
SELECT UNIX_TIMESTAMP('2021-11-27 12:35:03.123456') AS Result;
Résultat :
+-------------------+ | Result | +-------------------+ | 1637980503.123456 | +-------------------+