1

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

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

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

用户界面将允许业主将房价设置为时间段而不是单个天价——例如,如果 1 月至 6 月的房价为 50 美元,7 月至 12 月的房价为 100 美元,那么这是两个价格段。显然,如果需要,可以将其转换为 365 个日期类型字段,但使用两个日期范围类型字段的解决方案会更可取。

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

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

4

1 回答 1

1

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

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

于 2012-04-30T18:07:16.713 回答