Mysql 澳大利亚时间
我在数据库中有日期、时间字段,其中包含输入数据的本地日期、时间 我需要把那个时间转换成新南威尔士时间。但它并没有像预期的那样工作Mysql 澳大利亚时间,mysql,timestamp,Mysql,Timestamp,我在数据库中有日期、时间字段,其中包含输入数据的本地日期、时间 我需要把那个时间转换成新南威尔士时间。但它并没有像预期的那样工作 set @state='Adelaide'; CASE WHEN (@state ='NNSW') THEN concat(`date`,' ',`time`) WHEN (@state ='SNSW') THEN concat(`date`,' ',`time`) WHEN (@state ='Sydney')THE
set @state='Adelaide';
CASE WHEN (@state ='NNSW') THEN concat(`date`,' ',`time`)
WHEN (@state ='SNSW') THEN concat(`date`,' ',`time`)
WHEN (@state ='Sydney')THEN concat(`date`,' ',`time`)
ELSE CONVERT_TZ(concat(`date`,' ',`time`) , 'UTC', 'Australia/NSW') END
from tablea;
例如:
Date Time NSW Time
2015-01-29 00:15:00.000000 2015-01-29 11:15:00.000000
2015-01-31 00:15:00.000000 2015-01-31 11:15:00.000000
2015-01-29 00:15:00.000000 2015-01-29 11:15:00.000000
2015-01-27 00:15:00.000000 2015-01-27 11:15:00.000000
2015-01-28 00:15:00.000000 2015-01-28 11:15:00.000000
如果你看到与阿德莱德时间相比,新南威尔士州时间增加了11小时。但这些地区的时差只有30分钟。请告诉我如何解决此问题。您正在从UTC转换为AEST-相差11小时。您想使用
Australia/South
而不是UTC
作为旁注,如果您只是存储本地日期和州,那么每年会有一个小时的模糊数据。这对你来说可能不重要,但你应该仔细考虑。如果您的日期/时间值都是过去的,为了简单起见,您可能希望存储UTC值。pala uuu非常感谢。它起作用了。谢谢Jan Skeet的建议。