我有你期望的标准表,如'房间','预订'等。一切都在关系数据库中。酒店预订系统:如何存储每晚预订的单独价格?
“预约”表存储诸如room_id,入住日期和结帐日期等项目。
现在,简单地说,当进行预约时,系统检查房间价格表并获取每晚保留的费用(取决于日期,入住等) - 费用可能不同每晚取决于当前的价格。
很显然,预订时,每晚的价格是固定的。因此,即使房价在事后更新,该预订仍然保持约定价格,因为它是在价格变化之前完成的。
我的问题是:如何在预订时为每晚存储这些单独的商定价格?
我正在考虑使用另一个表格'PriceForNight'来存储每晚预订的预订ID,价格和日期。
我看到的唯一可能的问题是可伸缩性。如果平均预订时间为5晚,这意味着'PriceForNight'表格将比'Reservation'表快5倍左右。
将'PriceForNight'数据更好地存储在NoSQL数据库或类似的东西?
正在考虑的另一个选项是将每晚的价格作为以逗号分隔的字符串存储在“预订”表格行中的单个列中,例如:“150.00,175.00,175.00,200.00,150.00” 5晚预订。
我可能会过度思考这个问题,因为一个真正的问题可能只存在,如果它增长了1000倍,但我喜欢做正确的事情,所以我想我会接触到社区。
任何输入,非常感谢。
由于无论如何您都要在该表中输入每个晚上的记录,为什么不将这些数据存储在保留表中?您可以添加两列,即机架速率和实际速率。 – 2012-01-28 15:29:50
@MarkKram'Reservation'表中的每个预订只有一个条目,无论有多少晚上。 – Alex 2012-01-28 23:11:47
Aaah,好我现在明白了 – 2012-01-29 01:54:06