MySQL视图将来选择N天

时间:2013-02-28 17:03:55

标签: mysql select view

我有一个mySQL视图,我希望能够找到expirationDate的所有记录,这些记录从现在开始就是N天。例如,我想找到所有具有expirationDate的记录,这些记录在90天之后是完全正确的,所以我可以通过电子邮件发送给他们,让他们知道他们的课程即将到期。 dateCompleted和expirationDate都是datetime类型。

结构:

id  can firstName   lastName    email   course  curriculum  group   stageNum    stage   dateCompleted   expirationDate

数据示例:

1   123456789   John    Smith   jsmith@gmail.edu    PHS Conflict of Interest    Conflict of Interest mini-course    Conflict of Interest    1   Stage 1 2012-12-07 02:52:24 2015-12-07 02:52:24

3 个答案:

答案 0 :(得分:1)

这可以在90天之后使用expirationDate获得结果:

SELECT * FROM courses WHERE DATE(expirationDate) = DATE_ADD(CURRENT_DATE(), INTERVAL 90 DAY)

答案 1 :(得分:0)

您应该可以使用DATE_ADD之类的date and time functions来完成此操作:

SELECT * FROM courses WHERE expirationDate BETWEEN CURDATE() AND DATE_ADD(CURDATE(), INTERVAL 90 DAY);

答案 2 :(得分:0)

这应该可以解决问题:

SELECT * FROM courses 
WHERE DATE(DATE_ADD(expirationDate, INTERVAL -90 DAY)) = CURRENT_DATE