MySQL会话时区如何影响mysql的日期/时间增量?

时间:2013-01-14 10:50:04

标签: php mysql sql

我想将我的php代码中的一些逻辑移到我的mysql查询中,这些查询涉及进行时间和日期计算,这些计算需要始终参考UTC。

在php中,我一直在我的函数中使用ini_set('date.timezone', 'UTC');来保证一致性。

由于我可能无法始终控制系统时区,因此我使用SET time_zone = 'UTC';设置了每个连接的时区,这将确保在MySQL查询中使用派生日期的任何地方都将是UTC。

然而,我从documentationexcellent answer by T J Crowder到类似问题的不清楚是否会对此产生影响

ADDDATE() ADDTIME() or DATE_ADD()

即。这些帐户可以根据会话时区进行日光节约,也可以将这些帐户用于夏令时,无论如何。

如果是后者 - 是否可以使用CONVERT_TZ(dt,from_tz,to_tz)来计算ADDTIME()计算的结果,我们从MySQL系统表中派生出from_tz。

注意: - 我们知道@@global.time_zone, @@session.time_zone return 'SYSTEM'没有设定时区,因此无法在转换中使用。

0 个答案:

没有答案