选择过去24小时内的日期记录

cov*_*efe 9 mysql select

我想从我的表中选择日期(日期时间mysql格式为YYYY-MM-DD HH:MM:SS)在过去24小时内的所有记录.我有一个查询,但它不完全有效

 SELECT * FROM `my_table` WHERE date > DATE_SUB(NOW(), INTERVAL 24 HOUR)
Run Code Online (Sandbox Code Playgroud)

为什么它返回2013-07-01 12:00:00之类的日期.我该怎么做?谢谢.

Ed *_*bbs 23

您已经有了日期的下限,但由于您的表可以有将来的日期,您还需要一个上限.这应该工作:

SELECT *
FROM my_table
WHERE date > DATE_SUB(NOW(), INTERVAL 24 HOUR)
  AND date <= NOW()
Run Code Online (Sandbox Code Playgroud)