我正在 MySQL
中添加一些包含开始日期和结束日期的数据。如果假设我在 mysql 表中有一行 end_date
是 07/03/2018
。现在我想通知用户他的 end_date
即将出现在他的仪表板上。我想显示从 10/02/2018
到 end_date
的通知。这意味着从 10/02/2018
这个日期到 07/03/2018
用户每天都会在他的仪表板上看到通知。如何为此编写查询。下面是我显示表中所有数据的常规查询,但我不知道如何在这种情况下添加上述条件。
$Records = "
SELECT *,
DATE_FORMAT(start_date, '%d-%m-%Y') AS start_date,
DATE_FORMAT(end_date, '%d-%m-%Y') AS end_date,ORG_NAME
FROM vat_report
LEFT JOIN organizations ON vat_report.org_id = organizations.org_id";
$exec = $database_resultsObj -> execQuery ( $Records );
最佳答案
您可以使用 mysql 函数 CURDATE()
和 DATE_SUB(date, INTERVAL 27 DAY)
。在您的情况下,它看起来像这样:
SELECT *,
DATE_FORMAT(start_date, '%d-%m-%Y') AS start_date,
DATE_FORMAT(end_date, '%d-%m-%Y') AS end_date,
ORG_NAME
FROM vat_report
LEFT JOIN organizations
ON vat_report.org_id = organizations.org_id
WHERE CURDATE() >= DATE_SUB(end_date, INTERVAL 27 DAY)
AND CURDATE() <= end_date
关于php - 如何显示mysql 27天之前的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49553870/