我需要针对 MySQL 表中的一系列日期范围搜索用户的日期范围输入。
也许一个例子可以更好地解释这一点。假设我有一个带有“Rates”表的“Hotel”数据库。一行是“Fall”,从9 月 1 日到 11 月 30日,另一行是“Winter”,从12 月 1 日到 3 月 30 日,还有其他列。一位客人预订的房间重叠了两种价格。他将在那里过感恩节,并在 12 月初离开。这将涵盖两个不同的费率。我需要运行一个搜索,返回客人入住期间的每个“Rate”行。
这仅适用于客人的预订完全在一个(且只有一个)价格范围内:
SELECT * FROM 'rates' WHERE start < $guestArrive AND end > $guestDepart
有任何想法吗?