TIMESTAMP
と比較する場合 フィールドでは、サーバーのタイムゾーンで比較値を使用する必要があります。サーバーのタイムゾーンは、次の方法で確認できます:
SELECT @@time_zone;
したがって、実行した場合
SET NAMES time_zone = "+0:00";
次に、UTCベースの値を使用します。
これは、TIMESTAMP
が原因です。 フィールドはUTCでMySQLに保存され、表示(または比較)する前にサーバーのタイムゾーンに変換されます。
注:DATETIME
と比較する場合 フィールドまたはTIME
フィールドの場合、値がフィールドに挿入されたときに使用されたのと同じタイムゾーンで比較値を使用する必要があります。
これは、DATETIME
が原因です およびTIME
フィールドはタイムゾーン情報なしでMySQLに保存され、表示(または比較)の前に変換されません。