【发布时间】:2015-08-30 15:24:23
【问题描述】:
我正在尝试使用 sql 检查日期范围(包括开始日期和结束日期)是否在一个月内(关于年份)。月份和年份被赋予变量(GET 变量)。
这是我的桌子:
+----+------+-------+-----+
| id | name | start | end |
+----+------+-------+-----+
因为约会可能只是一个日期(开始和结束将是同一日期),所以我必须考虑这一点。
我的查询
SELECT
id,
name,
start,
end
FROM appointments
WHERE (MONTH(start) = ? AND YEAR(end) = ?) OR (MONTH(start) = ? AND YEAR(end) = ?)
ORDER BY start
这个查询的问题是它只检查开始月份和结束月份,而不是之间的月份。例如,如果约会超过 5 个月,则此查询失败。
【问题讨论】: