这是一个复杂的情况,我是ain。我有预订房间的预订系统。计算预定义日期范围内的天数
事情是房间的价格不是作为一个单一的价值储存,而是以期间为基础。就像一个房间可以在九月到十二月之间有一个每日房价,并且在三月到八月之间可以有一个不同的房价,而另一个房间的基本房价则可以。
率表是这样的:
ROOMID | RATE | PERIOD_START | PERIOD_END
让我们假设对于到3月31日3月1日之间的房,价格为20元/天,并于5月30日同处一室,从4月15日率是30美元,不过这个比率是15美元/天的统一费率。
如果这个房间是由一个客户端3月15日之间预订到5月10日,总成本将是:
15th March - 31st march charged at 20 Dollars/day = 16x20
1st April - 14th April charged at 15 Dollars/day = 14x15
15th April - 10th May charged at 30 Dollars/day = 25x30
现在我该怎么计算代码这个值,我会需要计算数量写天基于费率周期(如果有的话),否则使用基准费率。它的复杂,但它是如何。我正在使用php MySQL
[SQL要检查一组日期是否在指定的日期范围内](http://stackoverflow.com/questions/5027119/sql-to-check-if-a-set-of-日期 - 落在指定范围内的日期)[或者,也许这个](http://stackoverflow.com/questions/5092028/need-to-see-if-a-range-of-dates-重叠 - 另一个日期范围内的SQL) – 2011-02-23 17:53:10
所以问题是,有些日子要被预订可能在不同的价格/日期范围?那么就像3月31日之前的3天,然后4月1日之后的两天? – Jonah 2011-02-23 18:00:07
@jonah - yep就像你放的那样 – Ali 2011-02-23 18:04:52