我有一个棘手的查询,我需要在MySQL中构建,但无法获取。尝试了许多不同的方法。我有一个名为revuePeriod的字段,它是一个整数,指示两次检查之间的月数。我还有一个名为installDate的字段,它是一个日期字段。我只想返回今天之前安装日期加上revuePeriod的记录,因此本质上显示if (installDate + (revuePeriod x months)) < today我可以轻松地对间隔进行硬编码的操作,例如:

SELECT * FROM cameras WHERE DATE_ADD(installDate, INTERVAL 3 MONTH) < CURRENT_DATE


让我烦恼的是如何使字段revuePeriod决定的月数。

最佳答案

例如,您具有表“ temp”和字段“ installDate”和“ revuePeriod”。

然后您可以执行此查询

select date_add(installDate, interval revuePeriod * 3 month) AS f from temp HAVING f < CURRENT_DATE;


结果:



这是您想要的吗?

关于php - 使用日期计算进行棘手的MySQL查询,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27010981/

10-11 04:51