我正在尝试从特定月份的表中检索所有数据,我在数据库表中的日期格式为2016-06-19
我需要查找所选日期,就像我选择{{1 }}
它将从表中检索2016-05-22
到2016-05-07
个区间值。
对于本月2016-06-06
个月的所有值,我使用PHP 05
。我尝试过使用此查询
mysqli
这适用于正常运行的月份,但问题是,如果我选择上个月它不起作用。
答案 0 :(得分:1)
关于需要什么,问题不是很清楚。基于我能理解的2个要求:
获取给定日期周围的所有内容(即距离给定日期+ -15天):
SELECT *
FROM t_tenancy_details
WHERE agreement_date >= DATE_SUB(@d, INTERVAL 15 DAY)
AND agreement_date <= DATE_ADD(@d, INTERVAL 15 DAY);
获取月份与给定日期中的月份相同的所有记录:
SELECT *
FROM t_tenancy_details
WHERE MONTH(agreement_date) = MONTH(@d)
AND YEAR(agreement_date) = YEAR(@d);
其中@d是输入日期,在您的情况下 - CURRENT_DATE
答案 1 :(得分:0)
应该是这个
SELECT * FROM t_tenancy_details
WHERE (YEAR(t_tenancy_details) => YEAR(CURRENT_DATE - INTERVAL 1 MONTH)
AND MONTH(agreement_date) => MONTH(CURRENT_DATE - INTERVAL 1 MONTH))
AND (YEAR(t_tenancy_details) <= YEAR(CURRENT_DATE)
AND MONTH(agreement_date) <= MONTH(CURRENT_DATE))