So speichern Sie Zeitstempel mit Millisekundengenauigkeit in MySQL
Beim Umgang mit präzisen Zeitstempeln in MySQL ist es wichtig, die Einschränkungen des zu verstehen Zeitstempel-Datentyp. Standardmäßig speichert MySQL Zeitstempel mit Sekundengenauigkeit. Wenn Sie Zeitstempel mit Millisekundengenauigkeit speichern müssen, kommen bestimmte Überlegungen ins Spiel.
MySQL aktualisieren
Zunächst ist MySQL Version 5.6.4 oder höher erforderlich, um Bruchzahlen zu unterstützen -Datentypen zum zweiten Mal. Um Ihre Version zu überprüfen, verwenden Sie die Abfrage SELECT NOW(3). Wenn ein Fehler auftritt, müssen Sie möglicherweise MySQL aktualisieren.
Deklaration von Spalten
Um Spalten mit Datentypen für Sekundenbruchteile zu erstellen, verwenden Sie die folgende Syntax:
DATETIME(n)
Wobei n die Anzahl der Sekundenbruchteile darstellt. Beispielsweise bietet DATETIME(3) eine Auflösung im Millisekundenbereich. In ähnlicher Weise kann TIMESTAMP(n) verwendet werden, wobei n die Mikrosekundenauflösung für Zeitstempel im Unix-Stil angibt.
Abruf der Subsekundenzeit
Zum Abrufen der Systemzeit mit Millisekundengenauigkeit, verwenden Sie NOW(3):
SELECT NOW(3);
Wenn Sie Zeitstempel haben, die seit dem als Millisekunden dargestellt werden Unix-Epoche (z. B. JavaScript-Zeitstempel), konvertieren Sie sie mit FROM_UNIXTIME(ms * 0,001).
Ältere MySQL-Versionen
Wenn ein Upgrade von MySQL nicht möglich ist, sollten Sie die Verwendung in Betracht ziehen BIGINT- oder DOUBLE-Spalten zum Speichern von Zeitstempeln als Zahlen. Die Umrechnung in Mikrosekunden kann weiterhin mit FROM_UNIXTIME(col * 0.001) erfolgen. Um die aktuelle Zeit in einer solchen Spalte zu speichern, verwenden Sie UNIX_TIMESTAMP() * 1000.
Fazit
Wenn Sie die Datentypen und Konvertierungstechniken für Sekundenbruchteile verstehen, können Sie dies tun Zeitstempel effektiv mit Millisekundengenauigkeit in MySQL speichern und abrufen. Die Sicherstellung, dass Sie über die richtige MySQL-Version verfügen und die Implementierung der korrekten Spaltendeklarationssyntax sind der Schlüssel zum Arbeiten mit Subsekunden-Zeitstempeln.
Das obige ist der detaillierte Inhalt vonWie erreicht man in MySQL millisekundengenaue Zeitstempel?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!