MySql - 以UTC格式选择TimeStamp列

时间:2011-10-09 13:22:37

标签: mysql utc

在我的Mysql 5.0 DB中,我有一个列来控制LastUpdated信息。 Column是TimeStamp,MySql自动更新数据。

我正在尝试以UTC格式选择此列。

问题是服务器设置为美国日期时间。根据MySql文档,数据库以UTC格式存储信息,但是当我想显示信息时,它会将其转换为服务器的时间。

有没有办法做SELECT命令避免这种转换?

2 个答案:

答案 0 :(得分:32)

SELECT 
CONVERT_TZ(`timestamp_field`, @@session.time_zone, '+00:00') AS `utc_datetime` 
FROM `table_name`

我在这里制作了一张备忘单:Should MySQL have its timezone set to UTC?

答案 1 :(得分:6)

除了更改服务器的默认时区外,还可以通过执行此SQL语句来调整每个连接的时区:

SET time_zone = timezone;

其中timezone是时区的名称(see MySQL docs)。

或者,您也可以使用CONVERT_TZ function将时间戳转换为其他时区。