[英]How to convert time zone within mysql statement
我正在尝试使用mysql将unix时间戳转换为本地时间。
我正在尝试的语句是:
SELECT CONVERT_TZ('FROM_UNIXTIME(table1.timestamp)', 'GMT', 'MET' ),table1.COL2,table1.COL3 WHERE table1ID ='3'
它返回NULL
。
我宁愿直接在mysql中执行此操作,而不是稍后使用php操作输出以使代码的其他部分保持简单。
在此先感谢您的帮助。
尝试删除'FROM_UNIXTIME(table1.timestamp)'
上的引号,例如:
SELECT CONVERT_TZ(FROM_UNIXTIME(table1.timestamp), 'GMT', 'MET' ),table1.COL2,table1.COL3 WHERE table1ID ='3'
FROM_UNIXTIME(table1.timestamp)
周围的FROM_UNIXTIME(table1.timestamp)
使该字符串看起来不像日期。 您必须删除引号以使其成为函数调用。
一旦完成,您仍然可能会得到NULL
。 通过运行测试查询来测试它: SELECT CONVERT_TZ('2004-01-01 12:00:00','GMT','MET');
如果仍然得到NULL
,则可能需要设置时区表。 请参阅有关主题的MySQL文档 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.