我正在尝试从数据库中选择与今天的日期匹配的记录。数据库中日期的格式为2012-06-20 9:30:00
我使用的是SELECT id FROM
新闻报道WHERE DATE(newsdate) = CURDATE()
语句但它今天没有返回任何记录?
包含日期的列的屏幕截图
http://img135.imageshack.us/img135/8399/2347f03df0394cd898c7fc5.png
答案 0 :(得分:1)
DATE_FORMAT(NOW(),'%Y-%m-%d') = FORMAT_DATE(NOW(newsdate), '%Y-%m-%d')
或更好:
DATE(newsdate) = DATE(NOW())
最好的方法是使用 2001-09-11 日期格式存储附加列并比较一下
Example,感谢@Conrad Frix
答案 1 :(得分:0)
看起来curdate函数会给你一些与数据库中的日期格式不同的东西。
看一下这里的文档
它应该以这种格式返回日期:
2008-11-11
因此,您可以搜索curdate()和curdate()+ INTERVAL 1 DAY(未经测试)之间的日期范围,或者以curdate()格式存储日期。