Maison  >  Article  >  base de données  >  Comment convertir les horodatages d'époque en dates lisibles par l'homme dans MySQL ?

Comment convertir les horodatages d'époque en dates lisibles par l'homme dans MySQL ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-27 03:02:30813parcourir

How do I convert epoch timestamps to human-readable dates in MySQL?

Conversion des horodatages d'époque en dates lisibles par l'homme dans MySQL

Dans MySQL, les horodatages d'époque représentent le nombre de secondes ou de millisecondes depuis un point spécifique dans le temps, connu sous le nom d'époque (1er janvier 1970, 00:00:00 UTC). La conversion de ces valeurs numériques en dates lisibles par l'homme peut être effectuée à l'aide de la fonction from_unixtime().

Étape 1 : Vérifier la précision de l'horodatage

La précision de l'horodatage de l'époque est crucial pour le processus de conversion. Certains horodatages peuvent avoir une précision à la milliseconde, tandis que d'autres peuvent n'enregistrer que des secondes. Cette précision affecte les étapes suivantes.

Étape 2 : Gérer la précision en millisecondes

Pour les horodatages avec une précision en millisecondes, nous devons diviser par 1000 avant d'utiliser from_unixtime() pour comptabiliser pour les décimales supplémentaires :

<code class="mysql">mysql> select from_unixtime(floor(1389422614485/1000));
+------------------------------------------+
| from_unixtime(floor(1389422614485/1000)) |
+------------------------------------------+
| 2014-01-11 12:13:34                      |
+------------------------------------------+</code>

Mise à jour : Depuis MySQL 8.0, la fonction floor n'est plus requise lorsque vous travaillez avec des millisecondes :

<code class="mysql">mysql> select from_unixtime(1594838230234/1000);
+------------------------------------------+
| from_unixtime(1594838230234/1000)        |
+------------------------------------------+
| 2020-07-15 18:37:10.2340                 |
+------------------------------------------+</code>

Étape 3 : Gérer la seconde précision

Si l'horodatage n'a qu'une seconde précision, nous pouvons utiliser directement from_unixtime() :

<code class="mysql">mysql> select from_unixtime(1389422614);
+---------------------------------------+
| from_unixtime(1389422614)           |
+---------------------------------------+
| 2014-01-11 12:13:34                  |
+---------------------------------------+</code>

En suivant ces étapes, vous pouvez sans effort convertissez les horodatages d'époque en dates lisibles par l'homme dans MySQL, vous permettant d'afficher des données chronologiques dans un format compréhensible et convivial.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn