我有一个 char 字段,其中的日期为'26-Nov-2011' 我希望以YYYY-MM-DD格式打印此日期。
我使用了以下日期转换,这是不允许的。
select date_format('26-Nov-2011','%d-%b-%y')
返回空值。
我知道 date_format 函数可以接受 YYYY-DD-MM 格式的日期,但
请告诉我如何将字符转换为所需的日期格式
试试这个:
SELECT STR_TO_DATE('26-Nov-2011', '%d-%b-%Y') dte;
输出:
2011-11-26
You can use STR_TO_DATE() to convert your strings to MySQL date values and ORDER BY the result
STR_TO_DATE(datestring, '%d/%m/%Y')
STR_TO_DATE可以与这种格式一起使用'%d-%M-%Y'
,它将匹配您当前日期字符串的格式。否则它将返回null
。还要检查日期格式。
select str_to_Date('26-Nov-2011','%d-%M-%Y')
from table1
;
输出:
| STR_TO_DATE('26-NOV-2011','%D-%M-%Y') |
-----------------------------------------
| November, 26 2011 00:00:00+0000 |