MySQL STR_TO_DATE() 函数返回 null

ThE*_*oOb 3 mysql str-to-date

我想将我的日期格式从转换MMMM dd,yyyyyyyy-MM-dd.

我尝试使用以下方法:

SET @dt_to = STR_TO_DATE(dateTo, '%d-%m-%Y');
Run Code Online (Sandbox Code Playgroud)

但返回一个NULL值。

如何将我的日期yyyy-MM-dd转换为 MySQL 中的格式?

编辑:

我正在创建一个过程,其中在参数中dateTo接收了 的值。它是MMMM dd, yyyy格式的日期。例如October 10, 2015

笔记:

NULL当我使用时,整个查询不会返回:

SET @dt_to = dateTo;
Run Code Online (Sandbox Code Playgroud)

Pau*_*ulF 6

要先转换日期格式,您需要使用 STR_TO_DATE 将输入字符串转换为日期值

SET @dt_to = STR_TO_DATE(dateTo, '%M %d,%Y');
Run Code Online (Sandbox Code Playgroud)

然后将该日期值转换为您所需的格式

SET @dt_converted = DATE_FORMAT(dt_to, '%Y-%m-%d');
Run Code Online (Sandbox Code Playgroud)

或一键完成

SET @dt_to = DATE_FORMAT(STR_TO_DATE(dateTo, '%M %d,%Y'), '%Y-%m-%d');
Run Code Online (Sandbox Code Playgroud)