我正在尝试格式化时间以在日期时间结束时添加系统时区。
select date_format(now(),'%Y-%m-%dT%TZ') ;
输出我得到了
2018-06-06T10:00:18Z
但预期的产出是
2018-06-06T10:00:18 + 05:30
提前致谢!!!
我简要阅读了date_format()
和convert_tz()
函数的MySQL参考,并观察到不支持这样的语法。
所以,我想出了这个sql:
select concat(date_format(now(),'%Y-%m-%dT%T'),'.',@@global.time_zone);
此查询返回:
2018-06-06T19:46:46.SYSTEM
如何处理'SYSTEM'一塌糊涂?
@@global.timezone
是从您的配置文件初始化的,因此如果它设置为System的时间,则该变量不能超过该值。
解:
您应该已经覆盖了有问题的编程语言以获得更好的答案。无论如何,在运行此查询后,您必须检查查询是否已将时区返回为SYSTEM
,如果是,请让您的系统告诉它的时区。
让其他人知道,如果它奏效了。 :)