【发布时间】:2016-04-11 09:45:47
【问题描述】:
大家好,我正在开发一个小脚本,它必须检查 MySQL 数据库中的条目是否至少超过 10 天。 该表有一个时间戳字段(这是我想使用的,但如果需要我可以更改它)。 实际上我正在使用这个 sql 字符串:
SELECT *
FROM entries
WHERE tag='$tag'
AND DATE(last_update) > DATE_SUB(CURDATE(), INTERVAL 10 DAY)
但我发现一些选定的条目“年轻”于 10 天,所以也许我弄错了什么。 这是正确的方法还是更好地通过 PHP(而不是 MySQL 查询)检查它?
提前致谢。
【问题讨论】:
-
你能发一个例子吗?像
CURDATE() = X和DATE(last_update)=Y一样,返回错误 Y 的例子是什么? -
我不知道这一点,因为 last_update 字段每次都在“更新”,我得到错误行为的唯一线索是我有一个“post count”字段,每次都会增加,我发现其中一些计数增加了太多
-
在 DB shell 中测试查询通常很有帮助。它通常不会改变数据。