我正在尝试在SSAS表格中建立多对多关系。
我的表格项目(销售,客户,客户电子邮件)中有以下内容:
销售与客户联系在一起。客户可以收到多封电子邮件。
如何创建适合数据透视表当前过滤器的所有电子邮件列表?
例如,我可以创建一个数据透视表,显示“保证金<20%的帐户”,并希望获得与这些帐户相关联的所有电子邮件的列表。
示例,从以下销售数据开始:
customer # | revenue
1234 | 100
6789 | 50
我希望看到类似的东西(取决于确切的数据透视表设置)
1234
one@sample.com | 100
two@sample.com | 100
6789
three@sample.com | 50
(one@sample.com
和two@sample.com
都绑定到同一帐户)
相反,我得到:
1234
one@sample.com | 100
two@sample.com | 100
three@sample.com | 100
5678
one@sample.com | 50
two@sample.com | 50
three@sample.com | 50
答案 0 :(得分:0)
我不确定这是否可以解决您的问题,但我通过在两个多对多表之间创建桥梁关系来解决我的问题。我找不到我使用过的确切文章,但这个文章看起来就是这样解释的:
http://brentgreenwood.blogspot.com/2011/12/case-for-bridge-tables.html
在您使用Dimension Usage时,在您的多维数据集设计器中,其中一个选项是“多对多”。连接“桥”表应该只具有两个连接维和事实表的标识。我知道我没有解释你问题的任何具体内容,但也许这可能有助于你指出正确的方向。
答案 1 :(得分:0)
SQL Server 2012和2014不支持多对多关系.SQL Server 2016将包含此缺少的功能。 解决此问题的简单方法是将所有相关表放在过滤器中。此快捷方式适用于我的环境。下面给出示例供您参考。 措施1:=计算(总和[销售], '顾客', '电子邮件')
尝试后请告诉我。