2013-04-10 117 views
0

在我的db中,我以yymmdd格式存储日期。有没有办法将它们与MYSQL查询中的今天日期进行比较?将yymmdd日期与今天比较

这一个显然是行不通的

SELECT * FROM users WHERE created >= CURDATE(); 

回答

1

最佳的解决办法:使用本地的MySQL日期字段,而不是您的自定义VARCHAR格式,问题消失。

话虽这么说,至少你的格式是“最显著的部分第一”的格式,所以

SELECT ... 
WHERE created >= DATE_FORMAT(now(), '%y%m%d') 

应该工作,与你不符合Y2K的警告。

0

尝试创建列先转换一样,再比较其

SELECT * FROM users WHERE STR_TO_DATE(created, '%Y-%m-%d') >= CURDATE();