我的MySql数据库中有一个列,它将日期存储为字符串" dd / mm / yyyy"有没有办法让我在更新查询中有这个,我可以检查表中的日期是否过期与now()相比。
我已经看过CONVERT功能,但无法弄清楚如何在我的情况下使用它。
答案 0 :(得分:1)
STR_TO_DATE()
将str字符串转换为基于fmt格式字符串的日期值。 STR_TO_DATE()
函数可以根据输入和格式字符串返回DATE,TIME或DATETIME值。如果输入字符串是非法的,STR_TO_DATE()
函数将返回NULL。
SELECT STR_TO_DATE('21/5/2013','%d/%m/%Y');
随着时间的推移: -
SELECT STR_TO_DATE('01/01/2013 1130','%d/%m/%Y %h%i') ;
与now()
Where now()=STR_TO_DATE('01/01/2013 1130','%d/%m/%Y %h%i') ;
答案 1 :(得分:0)
试试这个:
SELECT ... FROM ... WHERE STR_TO_DATE(col, '%d/%m/%Y') > NOW()