我的表格中有一个字段due_date
。我想获取其due_date在今天前几天的记录,即due_date
和CURDATE()
之间的差异可以介于-1
到7
之间(在天)。
P.S。:-1
表示due_date
是昨天。
SELECT * FROM table WHERE (due_date - CURDATE() = 7);
提前致谢。 :)
答案 0 :(得分:1)
使用此查询,这将解决您的问题
SELECT *
FROM TABLENAME
WHERE due_date >= DATE_ADD(curdate(),INTERVAL -1 DAY)
AND due_date <= DATE_ADD(curdate(), INTERVAL 5 DAY);
答案 1 :(得分:0)
您可以使用DATEDIFF
SELECT DATEDIFF('2014-11-30','2014-11-29') AS DiffDate
答案 2 :(得分:0)
尝试此查询:
SELECT * FROM table WHERE DATEDIFF(due_date, NOW()) <= 7 and DATEDIFF(due_date, NOW()) >= -1;