我想将我的日期格式从 MMMM dd,yyyy
转换为 yyyy-MM-dd
。
我尝试使用以下方法:
SET @dt_to = STR_TO_DATE(dateTo, '%d-%m-%Y');
但返回一个 NULL
值。
如何在 MySQL 中将我的日期转换为 yyyy-MM-dd
格式?
已编辑:
我正在创建一个过程,其中在参数中接收到 dateTo
的值。它是 MMMM dd, yyyy
格式的日期。例如。 2015 年 10 月 10 日
。
注意:
当我使用时,整个查询不返回 NULL
:
SET @dt_to = dateTo;
最佳答案
要首先转换日期格式,您需要使用 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');
关于MySQL STR_TO_DATE() 函数返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33077614/