Ако сравнявате с TIMESTAMP
полета, трябва да използвате стойности за сравнение в часовата зона на сървъра. Можете да определите часовата зона на сървъра чрез:
SELECT @@time_zone;
Следователно, ако сте изпълнили
SET NAMES time_zone = "+0:00";
тогава ще използвате стойности, базирани на UTC.
Това е така, защото TIMESTAMP
полетата се съхраняват в MySQL в UTC и се преобразуват в часовата зона на сървъра преди показване (или сравнение).
Забележка:ако сравнявате с DATETIME
полета или TIME
полета, ще трябва да използвате стойност за сравнение в същата часова зона, която е била използвана, когато стойността е била вмъкната в полето.
Това е така, защото DATETIME
и TIME
полетата се съхраняват в MySQL без информация за часовата зона и не се преобразуват преди показване (или сравнение).