MySQL从GMT+;7至UTC

MySQL从GMT+;7至UTC,mysql,datetime,timezone,Mysql,Datetime,Timezone,在我的数据库表中有一个created_at列,该列有Y-m-d H:i:sGMT+7格式的记录,我想将所有created_at记录更新为UTC格式,例如: /*Old Records in GMT+7 format*/ +-------------------+ | created_at | +-------------------+ |2018-09-30 12:11:25| |2018-10-01 02:44:05| |2018-10-02 14:45:15| +-------

在我的数据库表中有一个
created_at
列,该列有
Y-m-d H:i:s
GMT+7格式的记录,我想将所有
created_at
记录更新为UTC格式,例如:

/*Old Records in GMT+7 format*/
+-------------------+
|    created_at     |
+-------------------+
|2018-09-30 12:11:25|
|2018-10-01 02:44:05|
|2018-10-02 14:45:15|
+-------------------+


/*New Records in UTC format*/
+-------------------+
|    created_at     |
+-------------------+
|2018-09-30 05:11:25|
|2018-09-30 19:44:05|
|2018-10-02 07:45:15|
+-------------------+
使用CONVERT_TZ(创建于“+00:00”、“-7:00”):

输出:

createddate          utctime
2018-10-02 08:56:29  2018-10-02 01:56:29
使用CONVERT_TZ(创建于“+00:00”、“-7:00”):

输出:

createddate          utctime
2018-10-02 08:56:29  2018-10-02 01:56:29

为什么不指定
CONVERT_TZ(创建于“+07:00”、“00:00”)
?它已经是+7格式,需要在UTC中转换,这就是为什么“+00:00”、“7:00””,但它是静态的,不应该随着日光节约而改变。尽管结果正确,函数签名是
date,从_TZ到
,所以
+07:00
应该放在第一位。为什么不指定
CONVERT_TZ(创建于“+07:00”和“00:00”)
?它已经是+7格式,需要以UTC格式转换,这就是为什么“+00:00”和“-7:00”,但它是静态的,不应该随着日光节约而改变。尽管结果正确,函数签名是
date,from_TZ,为了_tz
,所以
+07:00
应该放在第一位。是否保证所有日期都是+7,或者根据一年中的时间确定为+7/+8?@SalmanA是的,因为我是这样保存的。是否保证所有日期都是+7,或者根据一年中的时间确定为+7/+8?@SalmanA是的,因为我是这样保存的