我想从我的表中选择日期(datetime mysql格式YYYY-MM-DD HH:MM:SS)在过去24小时内的所有记录。我有一个查询,但它没有完全起作用
SELECT * FROM `my_table` WHERE date > DATE_SUB(NOW(), INTERVAL 24 HOUR)
为什么它会返回2013-07-01 12:00:00之类的日期。我该怎么做?感谢。
答案 0 :(得分:22)
您已经有了日期的下限,但由于您的表可以有将来的日期,您还需要一个上限。这应该有效:
SELECT *
FROM my_table
WHERE date > DATE_SUB(NOW(), INTERVAL 24 HOUR)
AND date <= NOW()
答案 1 :(得分:0)
MySQL的:
SELECT * FROM my_table WHERE date&gt; = now() - INTERVAL 24小时;