我一直在用这个SQL声明撕开我的脑袋,我试图在当天增加8个小时,因为服务器位于另一个国家,并且它在格林尼治标准时间上午8点更新。我希望它在格林尼治标准时间上午12点更新,因此在当前日期增加了8个小时,如果有人可以提供一些亮点或解决方案,我会非常感激:)这是我到目前为止所拥有的
("SELECT * FROM timetable WHERE DATE (date) = CURDATE()");
("SELECT * FROM timetable WHERE DATE (date) = DATE_ADD(CURDATE(),INTERVAL 8 HOUR)");
这就是我提出的,但它没有显示任何东西:(
答案 0 :(得分:4)
试
SELECT * FROM timetable WHERE DATE (date) = date(now()+interval 8 hour)
答案 1 :(得分:0)
mysql有timezone conversion command:
CONVERT_TZ()将日期时间值dt从from_tz给定的时区转换为to_tz给定的时区,并返回结果值。时区的指定如第10.6节“MySQL服务器时区支持”中所述。如果参数无效,则此函数返回NULL。
答案 2 :(得分:0)
你可以试试这个
SELECT * FROM timetable WHERE datetimefield >= DATE_SUB(NOW(), INTERVAL 8 HOUR)
datetimefield应该是时间戳 感谢