根据当前日期查询结果
我想弄清楚如何根据当前日期选择结果。该脚本将每天运行,但我不确定如何自动执行此操作。根据当前日期查询结果
SELECT * FROM Orders WHERE OrderDate='2008-11-11'
什么我想现在
SELECT * FROM Orders WHERE OrderDate=NOW() - INTERVAL 1 DAY
SELECT *
FROM Orders
WHERE OrderDate >= DATE(NOW())
AND OrderDate < DATE(NOW()) + INTERVAL 1 DAY
编辑
我总是倾向于当我想到我核对到列写查询上述风格也有一个时间组件。
如果您OrderDate
列没有时间组件,那么作为Lennart
指出的那样,你可以简单地做:
SELECT *
FROM Orders
WHERE OrderDate = DATE(NOW())
编辑2:米哈伊对你的问题的评论也与此相关。您可以简单地使用CURDATE()
而不是DATE(NOW())
。
为什么'OrderDate = DATE(NOW())'? – Lennart
DATE(NOW())可以做到这一点,以及斯坦的。我错过了额外的括号 – user2168066
@Lennart:呃,我不知道'OrderDate'没有时间部分。所以我保险起来,以防万一。 – sstan
你可以做
SELECT * FROM Orders WHERE (OrderDate > DATE_SUB(NOW(),INTERVAL 1 DAY))
哪个数据库是这样吗? – sstan
对不起,我把它添加到帖子中。 MySQL – user2168066
不,不要那样做。改为添加标签。 –