我想把我的日期格式从MMMM dd,yyyy
转换成yyyy-MM-dd
。
我尝试使用以下方法:
SET @dt_to = STR_TO_DATE(dateTo, '%d-%m-%Y');
但是返回一个NULL
值。
如何将我的日期转换为yyyy-MM-dd
格式的MySQL格式?
编辑:
我正在创建一个在参数中接收dateTo
值的过程。它是一个MMMM dd, yyyy
格式的日期。例如October 10, 2015
。
注:
当我使用以下命令时,整个查询不返回NULL
:
SET @dt_to = dateTo;
发布于 2015-10-12 09:51:09
要首先转换日期格式,您需要使用STR_TO_DATE将输入字符串转换为日期值。
SET @dt_to = STR_TO_DATE(dateTo, '%M %d,%Y');
然后将该日期值转换为所需的格式。
SET @dt_converted = DATE_FORMAT(dt_to, '%Y-%m-%d');
或者一步一步
SET @dt_to = DATE_FORMAT(STR_TO_DATE(dateTo, '%M %d,%Y'), '%Y-%m-%d');
发布于 2015-10-12 09:43:11
如果它返回null,那么这意味着提取的日期时间值是非法的。你可以试试下面的样子。有关详细信息,请参阅MySQL文档。
SELECT STR_TO_DATE('October 10, 2015','%M %d,%Y');
https://stackoverflow.com/questions/33077614
复制相似问题