Heim  >  Artikel  >  Datenbank  >  Wie konvertiert man Epochenzahlen mit Millisekundengenauigkeit in für Menschen lesbare Daten in MySQL?

Wie konvertiert man Epochenzahlen mit Millisekundengenauigkeit in für Menschen lesbare Daten in MySQL?

DDD
DDDOriginal
2024-10-30 03:01:28963Durchsuche

How to Convert Epoch Numbers with Millisecond Precision to Human-Readable Dates in MySQL?

Epochennummer in für Menschen lesbares Datum in MySQL konvertieren

Problem:

Angegeben Epochennummer (z. B. 1389422614485) wird als VARCHAR-Datentyp gespeichert. Wie kann sie effizient in ein für Menschen lesbares Datum und eine lesbare Uhrzeit umgewandelt werden?

Lösung:

In MySQL , können die folgenden Schritte verwendet werden, um eine Epochennummer mit Millisekundengenauigkeit in ein für Menschen lesbares Format zu konvertieren:

  1. Verwenden Sie die Funktion from_unixtime(), um die Epochennummer in einen UNIX-Zeitstempel zu konvertieren.
  2. Dividieren Sie die Epochenzahl durch 1000, um die Millisekunden zu berücksichtigen. Dieser Schritt ist in MySQL-Versionen nach 8.0 möglicherweise nicht erforderlich.
  3. Für ältere Versionen von MySQL verwenden Sie die Funktion floor(), um das Ergebnis auf die nächste Sekunde abzurunden.

Putting Alles in allem kann die folgende SQL-Abfrage verwendet werden:

<code class="sql">SELECT from_unixtime(floor(epoch_number / 1000));</code>

Beispiel:

Berücksichtigen Sie die Epochennummer 1389422614485:

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

In MySQL 8.0 und höher ist die Funktion floor() nicht erforderlich:

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

Das obige ist der detaillierte Inhalt vonWie konvertiert man Epochenzahlen mit Millisekundengenauigkeit in für Menschen lesbare Daten in MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn