4

我有这种格式的日期5 Mar 1985 0:00存储在表中VARCHAR
我想把它转换成Datetime,我使用STR_TO_DATE()如下:

SELECT STR_TO_DATE(birth_date, '%d %m %Y %h:%i') FROM student WHERE pk = 29

但它返回NULL

4

2 回答 2

5

试试这种格式 -'%e %b %Y %k:%i'例如 -

SELECT STR_TO_DATE('5 Mar 1985 2:33', '%e %b %Y %k:%i') dt;
+---------------------+
| dt                  |
+---------------------+
| 1985-03-05 02:33:00 |
+---------------------+
于 2012-09-07T11:43:01.107 回答
1

试试STR_TO_DATE(birth_date, '%d %M %Y %h:%i')

%m= 整数 %M月份 = 字符串月份(例如:Mar)

于 2012-09-07T11:32:18.670 回答