我在mysql中运行了这个语句,它在每一行都返回null:
SELECT STR_TO_DATE('Fri, 22 Jun 2012 03:35:24 +0000', '%a, %e %b %Y %H:%i:%s %%%%%%%%%%') FROm t2;
我不知道+0000
的正确说明符。它应该是什么?
答案 0 :(得分:3)
+0000是时区偏移量。
mySQL不理解时区的概念,STR_TO_DATE
显然也没有:the list of date/time format placeholders根本没有提到时区。
如果你期望来自不同时区的日期,这似乎只能在mySQL的帮助下解决。您必须在其他地方预处理日期以将其变为始终 UTC(或您的本地时区,无论适用),或者如果它已经是UTC,ManseUK的建议(添加{{1你的格式字符串,所以mySQL忽略它)应该工作。