php - MySQL更改系统日期没有达到预期的结果

标签 php mysql date

我正在构建一个特定于日期的 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/

相关文章:

javascript - Python POST 请求相同的 JS/PHP

php - 如何在每个脚本的基础上设置 POST 大小限制?

php - 如何使用 php mysqli 更新多于 99 的行

mysql - 如何从MySql中的同一列链接到不同类型

java - Java java.util.Calendar 中语言环境设置的目的是什么?

php - 删除数据库中表的记录后删除物理文件

php - MySQL 查询没有结果

ios - 与日期字符串分开获取月份和日期

php - 教义查询生成器 DATE_FORMAT 不工作

php - 代码点火器 : Resetting the form values