我正在构建特定于日期的PHP脚本。
此脚本将在其星期日执行特定任务。我已经编写了我的PHP代码,并且我正在尝试测试它。由于今天不是星期天,我将系统日期设置为上周日。问题是我的MySQL查询没有返回预期的结果
SELECT date FROM schedules WHERE name='someName' AND date >= (CURDATE() - INTERVAL 3 DAY )
上面的查询将返回当前日期加减3天的记录。
以下是我得到的输出示例:
2015-11-26
2015-11-29
2015-11-30
2015-12-04
2015-12-02
我需要的结果是:
2015-11-26
2015-11-29
另一个问题:
SELECT date FROM schedules WHERE name='someName' AND date >= (CURDATE() - 3 )
上述查询将返回比当前日期早3天的所有日期,不包括当前日期的最后3天。
我只希望它返回当前日期的最后3天。
答案 0 :(得分:1)
我正在尝试了解您想要的输出。因此,您希望获得当前日期之前不超过3天的日期,以及将来不会有任何日期。
所以'2015-12-04'的结果将是:
2015-12-04
2015-12-03
2015-12-02
2015-12-01
所以也许BETWEEN
条款可以解决问题
SELECT date FROM schedules
WHERE name='someName'
AND (date BETWEEN (CURDATE() - INTERVAL 3 DAY ) AND CURDATE() );