SQL解析日期为21-JUN-14

时间:2014-06-05 11:42:10

标签: mysql

我有一些日期从Oracle数据库导出为varchars,日期采用这种格式;

20-JAN-13

14-OCT-14等等

我该如何解析它们?我一直在尝试STR_TO_DATE(next_event_date, '%d-%mmm-%YY')这样的事情,但没有运气,有什么想法吗?

亲切的问候, 哈利

2 个答案:

答案 0 :(得分:2)

直接来自文档:http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html

STR_TO_DATE(next_event_date, '%d-%b-%y')

您还应该在此处查找格式修饰符:http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_date-format

答案 1 :(得分:0)

试试这个

SELECT STR_TO_DATE(next_event_date,'%d-%M-%y');

使用你的例子。

mysql> SELECT STR_TO_DATE('14-OCT-14','%d-%M-%y');
+-------------------------------------+
| STR_TO_DATE('14-OCT-14','%d-%M-%y') |
+-------------------------------------+
| 2014-10-14                          | 
+-------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT STR_TO_DATE('20-JAN-13','%d-%M-%y');
+-------------------------------------+
| STR_TO_DATE('20-JAN-13','%d-%M-%y') |
+-------------------------------------+
| 2013-01-20                          | 
+-------------------------------------+

1行(0.00秒)

的MySQL>