mysql版本:mysql5.6
参考手册:
https://dev.mysql.com/doc/refman/5.6/en/date-and-time-functions.html#function_convert-tz
一、使用方式:
1.mysql> SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','MET');
-> '2004-01-01 13:00:00'
2.mysql> SELECT CONVERT_TZ('2004-01-01 12:00:00','+00:00','+10:00');
-> '2004-01-01 22:00:00'
二、一般会遇到的问题:
第一种使用方式有时候会返回NULL,原因是mysql的mysql数据库中没有对应的time_zone表
三、可以参考手册的解决方案:
https://dev.mysql.com/doc/refman/5.6/en/time-zone-support.html#time-zone-installation
1.对于Linux, FreeBSD, Solaris, and OS X系统,可以考虑使用系统的time_zone,目录在/usr/share/zoneinfo下面
在shell中执行:mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -ppassword mysql
即可
2.对于所有系统均可的,下载一个官方time_zone包http://dev.mysql.com/downloads/timezones.html
,在shell或cmd中执行:mysql -u root -ppassword mysql < file_name
上面命令执行完成后,最好重启一下mysql服务;
另外,官方手册还提供了几种方案,有兴趣的同学可以点击上面的链接自己学习