我无法更改查询以使用我当前的MDT时区。服务器和MySQL是UTC
`date` = Tue Aug 9 23:32:52 UTC 2016
SELECT NOW() = 2016-08-09 23:33:28
cat /etc/localtime = UTC0
当我尝试将CONVERT_TZ()运行到US / Mountain时,我的时间已经过去了。
SELECT CONVERT_TZ( CURDATE( ) , 'UTC', 'US/Mountain' )
返回2016-08-08 18:00:00
不确定我在这里做错了什么。
答案 0 :(得分:1)
而不是curdate
,您应该像在示例中一样使用now
:
SELECT CONVERT_TZ( NOW() , 'UTC', 'US/Mountain' )
curdate
仅返回日期,而不是时间。因此,将2016-08-09
转换为US/Mountain
会将其偏移6小时并返回前一天。