Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MySQL从UNIXTIME转换为带时区的ISO8601_Mysql_Timezone_Iso8601 - Fatal编程技术网

MySQL从UNIXTIME转换为带时区的ISO8601

MySQL从UNIXTIME转换为带时区的ISO8601,mysql,timezone,iso8601,Mysql,Timezone,Iso8601,我在MySQL中有一些日期存储为UNIXTIME,我想执行一个查询,其中时间以ISO8601格式返回,并带有时区。我知道使用FROM_UNIXTIME将返回本地时区中的时间,但我无法打印使用的时区 例如,当我请求时区时,根本没有返回任何时区 mysql-D foobar_db-executeselect 从“提交时间”表中,将“%Y-%m-%dT%TZ”作为“提交时间” 其中id=389580 +----------------------+ | time_submit | +

我在MySQL中有一些日期存储为UNIXTIME,我想执行一个查询,其中时间以ISO8601格式返回,并带有时区。我知道使用FROM_UNIXTIME将返回本地时区中的时间,但我无法打印使用的时区

例如,当我请求时区时,根本没有返回任何时区

mysql-D foobar_db-executeselect 从“提交时间”表中,将“%Y-%m-%dT%TZ”作为“提交时间” 其中id=389580

+----------------------+
| time_submit          |
+----------------------+
| 2014-01-06T14:43:29Z |
+----------------------+
这是令人难以置信的沮丧,因为MySQL在执行FROM_UNIXTIME转换时清楚地知道时区。我觉得我错过了一些明显的东西


编辑:当未指定UTC的偏移量时,ISO8601将上述时间戳定义为localtime。我希望返回偏移量。

到目前为止,我已经得出了以下看起来很难看的结论。选择*从提交时选择,“%Y-%m-%dT%TZ”作为时间从表中提交,其中id\u job=389580作为时间提交加入选择TIMEDIFFNOW,UTC\u时间戳作为UTC\u偏移作为UTC\u偏移,将重新运行2014-01-06T14:43:29Z 02:00:00ISO8601定义多种格式。你特别想要哪一个?听起来你想要一个带偏移量的扩展时间戳?如果是这样,您在评论中发布的内容格式不正确,可能使用了错误的偏移量。当前偏移量不一定是与您返回的数据相关的偏移量。我完全同意我上面的例子很糟糕,正如您指出的,也是错误的。我希望格式与运行date-iso-8601=s时相同,后者返回格式2014-04-25T08:19:04+0200