繁体   English   中英

MySQL无时区表-需要将欧洲/伦敦与UTC进行比较

[英]MySQL no timezone tables - need to compare Europe/London to UTC

我正在使用一个具有DATETIME类型字段的表,该字段在设置了PHP datetime默认时区后会更新:

date_default_timezone_set("Europe/London");
$date=date("Y-m-d H:i:s");

mysql_query("UPDATE mytable SET status='$status', statusupdated='$date' WHERE id='$id'");

我需要创建一个查询,该查询在某个($ landing)时间(UTC)之后获取所有结果:

mysql_query("SELECT * FROM mytable WHERE CONVERT_TZ(`statusupdated`, 'GMT', 'UTC') > $landingtime");

但是,数据库没有任何时区表,因此上述方法不起作用。

如何标准化查询,以便可以将状态statusupdated与UTC进行比较?

笔记:

我无法编辑数据库数据类型,因为这是一个外部数据库。 谢谢

为了简化这个问题,我简化了代码(我了解SQL注入等),也了解过时的功能。 谢谢。

弄清楚如何做到这一点。

我可以将@@session.time_zone转换为'+00.00' 可爱!

mysql_query("SELECT * FROM mytable WHERE CONVERT_TZ(`date`, @@session.time_zone, '+00:00') > $landingtime");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM