字段值随时间变化并查询它们

时间:2012-04-30 17:30:34

标签: sql date

想象一下,您有一个网站列出了可用的酒店房间及其价格。 酒店业主为每个房间设定了每天的价格 - 它只需要像“1月1日费用100美元”那样复杂,而不是“1999年1月1日费用50美元,2000年1月1日费用100美元”。 粒度仅限于日费率。

在数据库中表示这种方式时,最有效的(在查询房间时的负载方面)是什么? 对于每个房间,有一个单独的表格,其中包含日期字段和价格字段?即每个房间365个条目。

我看到了解决这个问题的方法,但是当用户希望进行诸如“8月7天预算为500美元”的查询时,问题会变得稍微复杂一些。这是我非常喜欢实现的功能。

用户界面将允许所有者将房间价格设置为时间块而不是个人日费率 - 例如,如果房间价格为jan-jun为50美元,jul-dec为100美元,那么这是两个价格区间。显然,如果需要可以转换为365个日期类型字段,但使用两个日期范围类型字段的解决方案将更可取。

关于我可以在哪里学习技术的任何指示都将非常感激。我搜索了谷歌并在日历表上找到了相关信息,但我们将不胜感激任何其他提示或信息。

历史上我使用过MySQL,但任何事情都会被考虑。

1 个答案:

答案 0 :(得分:1)

在Ralph Kimball的术语中,这被称为缓慢变化的维度。

我建议您查看其中一本书。最新版的“数据仓库工具包”应该很好地涵盖了这个主题。