0

嗨,我正在使用第三方 API 来显示我们网站中的提要,因为我在 db 表中opentime有调用字段。closetimefeed表每 20 秒更新一次。一切正常,现在问题出在opentimeandclosetime上。从我服务器的当前时间开始,它会在未来提供 3 小时的时间(可能是他们的服务器时间)。举例来说,如果我的服务器当前时间是上午 8:00,那么在时间馈送表正在更新opentime为上午 11:00(从现在起 3 小时,有时会发生变化)。我们不能对表进行任何更改,feed因为表是通过 API 调用自动更新的。

所以我想找出这两者之间的时间差(opentime - currenttime),我怎样才能将它转换opentime成我的服务器时间。

my-sql我在查询中尝试了以下代码,

TIMESTAMPADD(MINUTE,-180,FROM_UNIXTIME(opendate) // subtracting 3 hours(180 min) from the opendate.

有没有其他方法可以做到这一点?

提前感谢您的指导。

4

2 回答 2

2

您可以更改 MySQL 的默认时区。这可以设置为 MySQL 服务器的默认值,或者在每个连接中动态设置。像这样的东西:

set timezone='your timezone';

http://dev.mysql.com/doc/refman/5.5/en//time-zone-support.html

于 2012-10-22T06:13:17.790 回答
0

为 mysql 配置设置时区

set timezone='your timezone';

尝试一下

SELECT TIMESTAMPDIFF(MINUTE,'2012-10-21', NOW()) as diff;
diff=1997
于 2012-10-22T06:18:48.070 回答