MySQL:从字符串中提取日期

时间:2016-03-10 08:12:25

标签: mysql string date extract

是否可以从此字符串中获取mysql中的日期:2016年3月10日星期五005758?我想以mm / dd / yy格式获取日期。

1 个答案:

答案 0 :(得分:3)

使用STR_TO_DATE()将原始字符串转换为日期:

mysql> SELECT STR_TO_DATE('Thu Mar 10 005758 EST 2016', '%a %b %e %H%i%s EST %Y');
+---------------------------------------------------------------------+
| STR_TO_DATE('Thu Mar 10 005758 EST 2016', '%a %b %e %H%i%s EST %Y') |
+---------------------------------------------------------------------+
| 2016-03-10 00:57:58                                                 |
+---------------------------------------------------------------------+
1 row in set (0.00 sec)

然后使用DATE_FORMAT()将其格式化为您想要的'mm / dd / yy':

mysql> SELECT DATE_FORMAT( STR_TO_DATE('Thu Mar 10 005758 EST 2016', '%a %b %e %H%i%s EST %Y'), '%m/%d/%y');
+-----------------------------------------------------------------------------------------------+
| DATE_FORMAT( STR_TO_DATE('Thu Mar 10 005758 EST 2016', '%a %b %e %H%i%s EST %Y'), '%m/%d/%y') |
+-----------------------------------------------------------------------------------------------+
| 03/10/16                                                                                      |
+-----------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)