0

STR_TO_DATE通过函数中的日期转换问题MySQL

SELECT STR_TO_DATE('17-JUL-14','%Y-%m-%d %h:%i:%s')

它显示为

 NULL

我怎样才能将其显示为:

 2014-07-17 00:00:00

谢谢

4

3 回答 3

1

上面已经回答了,但是自从我看到这个,

你正在做的是

SELECT STR_TO_DATE('17-JUL-14','%Y-%m-%d %h:%i:%s')

这意味着您将 17 放入年份(映射第 1 到第 1 个值),意外月份仍然得到正确的值,但天又得到 14。那是错误的。

为什么你根本没有得到输出,%Y、%M 和 %D 使用大写字母。

于 2015-01-05T18:34:55.213 回答
1

这是输出:

 2014-07-17 00:00:00

使用:

 SELECT STR_TO_DATE('17-JUL-14','%d-%M-%Y %h:%i:%s')

希望能帮助到你 !

于 2015-01-05T08:42:25.457 回答
1

您正在尝试使用STR_TO_DATE. 您正在为其提供 3 个输入,并说插入到这 6 个字段中。首先插入 3 个适当的输入,然后使用DATE_FORMAT为附加字段获取 0。

SELECT DATE_FORMAT(STR_TO_DATE('17-JUL-14','%d-%b-%Y'), '%Y-%m-%d %H:%i:%s') from dual;

此外,您将要使用%H,因为小写字母会自动使用 12 而不是 0。

于 2015-01-05T08:09:24.977 回答