2016-06-09 106 views
1

如果我试图将结果限制在昨天,从午夜到午夜,我的where子句中会出现什么情况。我知道“> = NOW() - 1 Interval Day”会返回过去24小时,但对于每日报告,并且想要在除午夜之外的任何时候查看报告,我该如何实现?SQL搜索午夜到午夜

谢谢!

+0

可能重复的[使用DATETIME mysql查询日期之间的时间范围](http://stackoverflow.com/questions/20814364/query-time-range-between-dates-using-datetime-mysql) – bjmc

回答

0

您可以使用CURDATE()

where col >= date_sub(CURDATE(), interval 1 day) and 
     col < CURDATE() 
0
SELECT 
    CONCAT(DATE_SUB(CURDATE(), INTERVAL 1 DAY), ' 00:00:00') AS start_date, 
    CONCAT(DATE_SUB(CURDATE(), INTERVAL 1 DAY), ' 23:59:59') AS end_date; 

这应该得到你想要的日期,然后把CONCAT(...)的部分到您的where子句。