如果在输入的日期范围内不存在,请获取最近的日期

时间:2011-09-16 08:48:06

标签: php mysql sql

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

数据库结构

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-Sept-01 致: 2011年9月06日。 这将是显示。 (这已经没问了)

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

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

为此你可能需要运行一个子查询来找到最近的最短日期?然后从该日期开始到结束日期。

Forexample。

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