在mysql中将字符串更改为日期格式
我想知道如何将dd.mm.yyyy这样的字符串转换为日期格式,以便在日期之间进行比较 我首先得到字符串的日期部分,但不能使用STR_TO_date函数。我想我必须将这个日期字符串转换成一个新的日期字符串,比如dd/mm/yyyy,然后我可以使用STR_to_date。你有什么建议吗在mysql中将字符串更改为日期格式,mysql,date,Mysql,Date,我想知道如何将dd.mm.yyyy这样的字符串转换为日期格式,以便在日期之间进行比较 我首先得到字符串的日期部分,但不能使用STR_TO_date函数。我想我必须将这个日期字符串转换成一个新的日期字符串,比如dd/mm/yyyy,然后我可以使用STR_to_date。你有什么建议吗 SUBSTR(OLD_VALUE,1,10) 编辑 好的,这就是我到目前为止所做的,我得到了一个错误 WHERE (STR_TO_DATE(SUBSTR(OLD_VALUE_TEXT),1,10),'%D.%M.%
SUBSTR(OLD_VALUE,1,10)
编辑
好的,这就是我到目前为止所做的,我得到了一个错误
WHERE (STR_TO_DATE(SUBSTR(OLD_VALUE_TEXT),1,10),'%D.%M.%Y') <
(STR_TO_DATE(SUBSTR(NEW_VALUE_TEXT),1,10),'%D.%M.%Y'))
我相信这远不是最好的,但你可以尝试一下:
concat_ws('/',子字符串(旧_值,1,2),子字符串(旧_值,4,2),子字符串(旧_值从7开始))代码>
您可以在控制台上尝试:
选择concat_ws('/',substring('dd.mm.yyyy',1,2),substring('dd.mm.yyyy',4,2),substring('dd.mm.yyyy',from 7))代码>
将返回此文件:
年月日
好奇的是,你为什么不能用str\u来约会呢?这正是您所需要的…STR_TO_DATE很好,只需将“%d.%m.%Y”@AhmetTanakol这里的格式用作参数即可。。你得到的错误是什么?同样在你的参数中,M与D@Mihai的M不一样。我明白了,谢谢你,伙计,正如你说的,我的问题是当我运行sql查询时,程序正在将小写转换为大写。
Name Char(30) Old_Value_Text Char(40) New_Value_Text Char(40)
John 12.02.2012 01.02.2014
Max 14.01.2014 22.02.2014
Carter 05.05.2013 19.01.2014
James 03.12.1998 07.02.2013
Hank 26.04.2009 13.10.2012