如何在数据模式模型中有效地设计动态层次结构?

时间:2009-04-17 22:46:44

标签: database-design

为了澄清,我们说我的数据库中有用户和用户权限,我还有与这两个表相关的城市,州,县和地区等信息。在这种情况下,我可以通过一夜之间或增量过程轻松地将我的用户权限汇总到城市,州,县和地区级别。

我没有像城市,州,县等固定群体的替代方案,但我希望某些超级用户能够灵活地创建自己的群组,并以下列形式手动绑定用户:

User1|
User2| - group1
User3|
                 -> group3
User4|
User5| - group2
User6|

此外,我仍然可以继续拥有这样的城市,州,县组:

User1|
User4| - city1
User3|
                 -> county1
User4|
User5| - city2

是否有一个已知的数据库模式可用于将相关数据有效地汇总到这些不同的存储区中?某种标记模式?

请告诉我如果我不清楚,我可以提供更多细节以澄清。

进一步澄清:

我想按国家/地区跟踪用户点击的报告,我可以进一步深入了解州和城市的2个级别。

现在让我们说我有一个工具来创建我自己的分组(通过用户界面),现在我将能够创建具有来自不同州的城市的新区域。所以现在我的报告可以按国家/地区显示用户点击次数,然后我可以深入查看自定义区域(城市组)。现在,应根据新组重新计算用户点击,各种平均值等所有分析。

3 个答案:

答案 0 :(得分:3)

查看nested sets或邻接列表(也在同一篇文章中)。他们有自己的优缺点......

答案 1 :(得分:0)

这听起来与我在user defined hierarchical data models上的问题相似,也许答案会有所帮助。

答案 2 :(得分:0)

你的逻辑是错误的。城市,县,州不是等级的 - 一个城市可以存在于不同的县等。

相关问题