• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

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

mysql 来源:Ahmet Tanakol 4次浏览

我想知道如何将dd.mm.yyyy这样的字符串转换为日期格式,以便日期之间进行比较。在mysql中将字符串更改为日期格式

我首先得到字符串的日期部分,但我不能使用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')) 

新旧和值的文本是40长度的字符,并以这种格式01.02 .2014

样本数据

我正在分享soma数据样本。我需要查找new_value大于旧值的条目。谢谢

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 


===========解决方案如下:

我敢肯定,这远非最好的,但你总是可以试试这个:

concat_ws('/',substring(OLD_VALUE,1,2), substring(OLD_VALUE,4,2), substring(OLD_VALUE from 7));

,您可以尝试在控制台上:

SELECT concat_ws('/',substring('dd.mm.yyyy',1,2), substring('dd.mm.yyyy',4,2), substring('dd.mm.yyyy' from 7));

将返回这个:

dd/mm/yyyy


版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)