2012-07-09 54 views

回答

5
SELECT * 
FROM tlb_students 
WHERE date >= NOW() - INTERVAL 3 DAY 
ORDER BY date DESC 
LIMIT 20 
+0

使用NOW()和CURDATE()Zane有什么不同?如果我在凌晨使用这些数据,是否有可能在前天之前记录数据? – 2012-07-09 03:02:48

+3

@AJOP'NOW()'产生格式为'YYYY-MM-DD HH:MM:SS'的时间戳,而'CURDATE()'产生格式为'YYYY-MM-DD'的日期,所以与'NOW()',你会在当前时间的3天内获得帖子,因为小时/分钟/秒被考虑在内。这假设你的'date'字段是'DATETIME'或'TIMESTAMP'类型。 – 2012-07-09 03:05:47

4
WHERE date >= (CURDATE() - INTERVAL 3 DAY) 
+0

非常感谢sel。 – 2012-07-09 02:58:19

1

另一种方式来做到这一点是:

SELECT * FROM tlb_students WHERE date < DATE_ADD(CURDATE(),INTERVAL -3 DAY) 
2
WHERE date >= subdate(NOW(), 2)