這是一個複雜的情況,我是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