首页 > 解决方案 > 如何获得准确的 15 天前的记录不在之间

问题描述

我有一个表,其中 next_due _date 是一列,其中多个日期显示为 2019-09-14,2019-11-30,2019-09-14。

我想写一个查询,我将每天执行一次,它会在 15 天之前针对 next_due _date 返回我的数据

标签: mysql

解决方案


这是一个对您有用的查询。

SELECT * FROM YOUR_TABLE WHERE SUBDATE(NOW(), INTERVAL 10 DAY ) < next_due _date

但是您还需要其他东西,因为您需要每天执行并将这些数据发回给您。

1 - 对于日常执行,您可以使用数据库中的触发器作为调度程序,但它不能将数据发送回,尽管您可以将数据存储在另一个表中,并且您可以在需要时将它们导出为 CSV 或文本。

2 如果您希望将这些数据以文本或 excel 等格式并完全自动化返回给您,那么您必须使用一些服务器端语言,例如 PHP。您将编写一个脚本/API,它将为您生成一个文件,甚至通过电子邮件发送。在这里,您将必须通过系统中的某个计划(如 crontab)运行端点。

还有很多其他的方法,你的要求也不短。


推荐阅读