我在 MySQL 中有一堆日期时间行,例如:
生日
422859600000
418705200000
8132400000
869886000000
422859600000
如果我将此日期时间转换为格式yyy-mm-dd hh:mm:ss.0000我会得到:
1983-05-27 00:00:00.0000
1983-04-08 22:00:00.0000 (how to convert this to 00:00:00.000)
1970-04-04 04:00:00.0000 (...)
1997-07-25 21:00:00.0000 (...)
1983-05-27 00:00:00.0000
然后我尝试使用此查询转换时区:
SELECT CONVERT_TZ(FROM_UNIXTIME( birthday / 1000 ), '-02:00', '+00:00') as datetime FROM users
最后我明白了:
1983-05-27 02:00:00.0000 (wrong!)
1983-04-09 00:00:00.0000
1970-04-05 00:00:00.0000
1997-07-26 00:00:00.0000
1983-05-27 02:00:00.0000 (wrong!)
如您所见,解决方案是使用CONVERT_TZ但可以计算第二个参数,如何计算每行的时区差异?