多对多的powerpivot关系

时间:2015-02-25 22:21:26

标签: many-to-many relationship powerpivot powerview

我有2个数据集,我想创建关系(有第三个我想加入,但前两个是优先级)。它们都有一个通用链接,即design_ID。

我确实有一张照片显示了我的尝试。但我还没有10个重复点...所以我会试着描述它。 我有2个数据集,其中包含我已阅读过的连接表。我有两个数据集连接到连接表,这是表中的所有区域。

design_ID也分解为区域,剥离和剪切。所有这些列都有多个条目(每个10到100)。

理想情况下,我希望能够提取的是使用design_id,area,strip或cut作为切片器/搜索参数的任何数据集中的信息。

编辑: 我一直在观察一些关于powerquery的问题,认为这可能是要走的路?

感谢任何帮助

2 个答案:

答案 0 :(得分:1)

您需要一个唯一的design_ID列表。如果您无法选择具有唯一列表的第三个数据集,则可以将两个数据集中的design_ID复制到新工作表中删除重复项,然后创建可用于连接到数据集1和数据集2的链接表。

当您使用SQL服务器时,您可以使用SQL查询创建第三个数据集。 当您说“2 sql database”(如果您指的是同一sql服务器上的2个数据库)时,您可以通过创建与database1的连接并编写将从两个数据库中提取唯一列表的查询来创建唯一列表。

SELECT DISTINCT [design_ID]
FROM [table1]
UNION
SELECT DISTINCT [design_ID]
FROM [database2].[dbo].[table2]

如果您指的是2个不同SQL服务器上的2个数据库,您可以询问您的DBA是否可以创建从Server1到Server2的链接服务器。如果可以这样做,那么您可以使用以下内容。请注意,您将链接服务器名称放在database2前面。

SELECT DISTINCT [design_ID]
FROM [table1]
UNION
SELECT DISTINCT [design_ID]
FROM [server2].[database2].[dbo].[table2]

答案 1 :(得分:0)

您没有提及如何获取数据。但对我来说,我的数据往往来自数据库。因此,当我遇到类似情况时,我使用SQL查询导入第3个表,该查询仅提取我要查找的唯一项目。