我正在构建一个特定于日期的 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 天。
最佳答案
我正在尝试了解您想要的输出。因此,您希望获取当前日期之前不超过 3 天的日期,并且不获取任何 future 日期。
因此,在“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() );
关于php - MySQL更改系统日期没有达到预期的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34098990/