如果在输入的日期范围中不存在,则获取最接近的日期


Get the closest date if it doesn't exist in the inputted date range

我现在正在做一个后端,我正试图按日期范围列出房间数量。

<<p> DB结构/strong>
id room_type_id room_count date_applied
1  1            2          2011-09-01
1  1            3          2011-09-05
1  1            1          2011-09-06

HTML中:

如果用户输入来自: 2011 - 9月- 01 2011 - 9月- 06:。这就是显示器。(这已经OK了)

Date          Room Count
2011-Sept-1   2
2011-Sept-2   2
2011-Sept-3   2
2011-Sept-4   2
2011-Sept-5   3
2011-Sept-6   1

我现在的问题是,当用户输入到From和To已经超出了数据库中存储的数据的范围。样本:从2011-09-07到2011-09-09

在HTML中显示的输出应该是这样的:

Date          Room Count
2011-Sept-7   1
2011-Sept-8   1
2011-Sept-9   1

它将获取数据库中最近/最近的数据。对于这个示例,它将是2011-09-06

谢谢你的帮助

为此,您可能需要运行子查询来查找当前最低日期?然后从该日期开始到结束日期。

例如.

SELECT * FROM tbl WHERE date BETWEEN (SELECT date FROM tbl WHERE date < lower_range LIMIT 1 ) AND upper_range