2

我在 mysql 中运行了这个语句,它在每一行都返回 null:

SELECT STR_TO_DATE('Fri, 22 Jun 2012 03:35:24 +0000', '%a, %e %b %Y %H:%i:%s %%%%%%%%%%') FROm t2;

我不知道+0000. 应该是什么?

4

1 回答 1

3

+0000 是时区偏移量。

mySQL 不理解时区的概念,显然也不理解STR_TO_DATE日期/时间格式占位符列表根本没有提到时区。

如果您希望日期来自不同的时区,那么仅借助 mySQL 似乎无法解决。您必须在其他地方预处理日期以将其转换为始终为UTC(或您的本地时区,无论适用)的日期,或者如果它已经始终为 UTC,ManseUK 的建议(添加+0000到您的格式字符串以便 mySQL 忽略它)应该工作。

于 2012-07-26T17:07:53.327 回答