这返回1
(又名TRUE
)
SELECT DATE_SUB(NOW(), INTERVAL 24*100 HOUR) = DATE_SUB(NOW(), INTERVAL 100 DAY);
100 天前,一天中的小时没有改变。但由于夏令时(美国),100 个 24 小时前的时间段实际上比按天数计算的时间早一小时。如果上面的语句考虑了夏令时,它会返回0
or FALSE
。
有没有一种方法可以说明给定语句或会话的 DST?我宁愿不使用UNIX_TIMESTAMP
,因为它会切断 2038 年以后的任何东西。