這將返回1
(又名TRUE
)MySQL:DATE_SUB/DATE_ADD佔DST?
SELECT DATE_SUB(NOW(), INTERVAL 24*100 HOUR) = DATE_SUB(NOW(), INTERVAL 100 DAY);
100天,一天的時間不會改變。但由於夏令時(美國)的原因,二十四小時前的實際時間比按天計算的實際時間早一小時。如果上述說明佔DST,則將返回0
或FALSE
。
有沒有一種方法可以解釋給定的語句或會話的DST?我寧願不使用UNIX_TIMESTAMP
,因爲它切斷了2038年前的任何事情。
這可能會有幫助http://stackoverflow.com/questions/1646171/mysql-datetime-fields-and-daylight-savings-time-how -do-i-reference-the-extra(不太可能在mysql中有治療) – ajreal 2011-09-07 13:24:10
男孩!做[我希望我可以寫一個自定義的數據類型](http://dba.stackexchange.com/questions/5098/is-there-such-thing-as-custom-data-types),正常工作! – 2011-09-07 14:19:03
您必須爲您編寫自己的DATE_SUB功能,並考慮到DST。順便說一句,我很想扼殺那些夢見DST噩夢的人。 – Johan 2011-09-07 15:12:58