Database 多对多维度表库数据库

Database 多对多维度表库数据库,database,data-warehouse,Database,Data Warehouse,我需要找出哪一类书借得最多。因此,我有下面的UML图 因此,在制作维度表和事实表时,我提出了以下建议: 但是Auth(dimension)关联表似乎不正确。有错误吗?我怎样才能改正? 编辑:可能不应该有类别和发布者维度表。它们应该随书附上。您的尺寸模型需要重新设计 事实表必须为“Auth”,并带有以下字段: 职员身份证 学生证 书号 发布日期 借来的钱 然后需要4个维度表: Staff(包含Staff键、Staff属性、库属性) 学生(学生密钥、学生属性) 图书(图书索引、图书属性、出版

我需要找出哪一类书借得最多。因此,我有下面的UML图

因此,在制作维度表和事实表时,我提出了以下建议:

但是Auth(dimension)关联表似乎不正确。有错误吗?我怎样才能改正?
编辑:可能不应该有类别和发布者维度表。它们应该随书附上。

您的尺寸模型需要重新设计

事实表必须为“Auth”,并带有以下字段:

  • 职员身份证
  • 学生证
  • 书号
  • 发布日期
  • 借来的钱
然后需要4个维度表:

  • Staff(包含Staff键、Staff属性、库属性)
  • 学生(学生密钥、学生属性)
  • 图书(图书索引、图书属性、出版商、类别)
  • 日历(日期键、日历属性) 你可能需要第二个日历才能使用
它在哪些方面“似乎不正确”?您的实际问题是什么?现在我创建了Auth维度表。但显然有一些方法,比如桥接表法、布尔法等。所以,我不确定我的维度表。你在这里问了五个不同的问题。但你没有问清楚他们中的任何一个。阅读下面的答案,如果你想回答一个明确的问题,我需要做一个事实表,从中我可以确定哪一类书是借阅最多的。根据上面的UML,我正在制作维度表和事实表。我很难弄清楚如何创建Auth的维度表,这是一种多对多关联关系。我希望这可以澄清问题。基本上遵循下面的@RADO建议,但您还需要一个桥接表来建模从
书籍
类别
(假设一本书可以包含多个类别)。您将使用什么工具进行报告?您只是在编写SQL语句吗?什么样的数据库?事实表不应该由维度表键组成吗?我是这方面的新手,是的。职员ID、学生ID、书本ID都是维度表keys@Ali:是的,它们应该是一致的。同时,不应使用“自然关键点”进行连接。此外,您的维度是“Book”,而不是“ISBN”,因此Book\u ID是这个关键维度的更好名称,而不是“ISBN\u key”@RADO在日历中同时包含发行日期和借阅日期会有问题吗?