Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在mysql中将字符串更改为日期格式_Mysql_Date - Fatal编程技术网

在mysql中将字符串更改为日期格式

在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.%

我想知道如何将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.%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