Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL-Zeitzonenabfrage

Wenn Sie mit TIMESTAMP vergleichen Felder müssen Vergleichswerte in der Zeitzone des Servers verwendet werden. Sie können die Zeitzone des Servers ermitteln über:

SELECT @@time_zone;

Daher, wenn Sie ausgeführt haben

SET NAMES time_zone = "+0:00";

dann verwenden Sie UTC-basierte Werte.

Das liegt daran, dass TIMESTAMP Felder werden in MySQL in UTC gespeichert und vor der Anzeige (oder einem Vergleich) in die Zeitzone des Servers konvertiert.

Hinweis:Wenn Sie mit DATETIME vergleichen Felder oder TIME Felder müssen Sie einen Vergleichswert in derselben Zeitzone verwenden, die verwendet wurde, als der Wert in das Feld eingefügt wurde.

Das liegt daran, dass DATETIME und TIME Felder werden in MySQL ohne Zeitzoneninformationen gespeichert und vor der Anzeige (oder einem Vergleich) nicht konvertiert.