我有以下业务场景。我有一个事实表和一些事实。还有一个具有父子层次结构的维度类别。在一个Category维度中打包了许多不同的层次结构。我的意思是有很多不同类型的分类。 Fact和Category Dimension之间也存在多对多关系。事实可以绑定到当时的多个类别。 我现在已经有大约200个层次结构,可能会多一点,但我不希望在维度表中获得超过100k-200k的行。
我已将类别维度添加两次到多维数据集,以便能够在列和行上具有不同的层次结构。我的问题是,我确实看到了不同层次结构之间的交叉值。 如果我在行上过滤一个层次结构而在列上过滤另一个层次结构,我什么也得不到
我认为我的问题在某种程度上涉及多对多革命中的多个选择范例,但我没有找到它的样本。
我正在使用SSAS 2012 Multidimensional。
我也感兴趣,如果有可能像表格中的那样:))
这是数据库架构
CREATE TABLE [dbo]。[cat]( [cat_id] [int] NOT NULL, [parent_cat_id] [int] NULL, [name] nchar NULL, CONSTRAINT [PK_cat] PRIMARY KEY CLUSTERED([cat_id] ASC)
创建表[dbo]。[事实]( [fact_id] [int] NOT NULL, [name] nchar NULL, [value] [int] NULL, CONSTRAINT [PK_Fact] PRIMARY KEY CLUSTERED([fact_id] ASC)
CREATE TABLE [dbo]。[fact_cat]( [fact_id] [int] NULL, [cat_id] [int] NULL, [id] [int] NOT NULL, CONSTRAINT [PK_fact_cat] PRIMARY KEY CLUSTERED([id] ASC) GO
ALTER TABLE [dbo]。[fact_cat] ADD CONSTRAINT [fk_fact_cat_cat] FOREIGN KEY([cat_id]) 参考文献[dbo]。[cat]([cat_id]) GO
ALTER TABLE [dbo]。[fact_cat] ADD CONSTRAINT [fk_fact_cat_fact] FOREIGN KEY([fact_id]) 参考文献[dbo]。[事实]([fact_id]) GO
提前感谢您的帮助!
答案 0 :(得分:0)
我通过在多维数据集中处理[dbo]。[fact_cat]表来解决这个问题。为此,必须添加适当的命名查询。我已将此虚拟副本表命名为fact_cat2。之后我为它创造了一个混乱。 我已根据多对多革命的调查实例实施了所有这些 http://www.sqlbi.com/articles/many2many/