互动 先见
+ - - - - - -
{{项目。标签}}
的见解

如何在Power BI中使用桥接表连接多对多

数据可视化工具的最大价值之一是连接不同类型的数据表,以计算结果、说明趋势或发现异常值。表之间的关系是创建这些连接所必需的。

Power BI中的关系

Power BI中的关系有多种配置,包括基数和交叉筛选方向,它们决定了表之间连接和交互的方式。

基数

一对一的基数意味着两个表中的相关列每个值只有一个实例。

一对一(*:1)

最基本的关系之一是一对一关系。当两个相关表中每个唯一值只有一个实例时,就会发生这种情况。正如您在上表中所看到的,这些关系很简单,而且匹配得很好。

多对一(*:1)

多对一关系意味着一个表中的一列只有每个唯一值的一个实例,但另一个表中的相关列有特定值的多个实例。

多对一(*:1)使用网桥

多对多(*:*)

Power BI发布了多对多关系特性是Power BI桌面中复合模型功能的一部分。您可以通过导航到文件>选项和设置>选项>预览功能>和检查来启用此功能composite模型。在启用复合模型之后,您需要重新启动Power BI。

那么,创建多对多关系的能力不就意味着不需要建立桥接表了吗?

从技术上讲是可以的,但这取决于你要连接多少数据源,你的数据有多复杂,以及其他你可能想要建立一个桥梁来确保关系的准确性。

例如,当每个表中没有出现所有唯一值时,多对多关系通常就会出现问题。在查看上面的示例关系时,您可以看到多对多关系并没有说明紫色,因为它只在一个表中找到。另一方面,使用桥的关系确实包括紫色作为唯一的值。这可能会影响整体分析,如下图所示:

用多对多关系分析数据

您将注意到,此图表中的分析不包括该值紫色的。但是,我们知道它至少出现在上面示例中的一个表中。正如前面提到的,许多对许多关系经常会遗漏一些数据点,而这些数据点并不是在所使用的所有表中都能找到的。

使用桥接关系分析数据

另一方面,当使用桥接时,所有唯一的值都将在分析中被考虑。这可以确保您不会错过可能对结果产生重大影响的大量数据。

交叉滤波器方向

在创建关系时,您可以选择单个交叉过滤器方向或两个交叉过滤器方向。使用这两个交叉筛选方向,当筛选一个表中的任何值时,如果另一个表中的值通过关系连接,则相同的筛选器将应用于另一个表中的值—将连接表的所有方面视为单个表。

制作桥牌桌

桥接表(也称为关联实体表)是一种创建多对多连接的方法,方法是创建一个包含每个唯一值的单一实例的列的表,它创建一个桥接来将两个或多个列连接在一起。

步骤1:清理数据

在构建桥梁之前,我再怎么强调清理数据的重要性都不为过。

如果您花时间清理您的原始表,到我们在下一步中创建引用时,您的引用将是干净的,因为您已经清理了数据。首先清理所有的表,然后在进行转换和引用后返回并尝试清理多个表,这样可以节省时间。

不管怎样,如果一个表中有混合大小写url,另一个表中没有,那么如何期望正确地连接数据呢?如果有些url后面有斜杠,而有些没有?也许一个表的值在末尾有空格,而您完全不知道!

如果不清理数据,就不会得到可靠的输出。你会花时间做一个漂亮的仪表盘并没有告诉你任何事情因为数据没有正确连接。

所以,在我们开始建桥之前,清理数据。请参阅我们的检查清单清洁的url以及我们关于在Power BI中清理和删除数据的帖子,以确保在进入第2步之前准备好您的表。

请记住,在本教程中,您不需要删除重复数据,因为我们将构建一个重复数据删除表来桥接其他表。

在这个例子中,我将比较付费搜索关键词和有机关键词排名的转化率,以找到优化有机页面和增加付费支出的机会。

步骤2:创建要桥接的表的引用

通过右键单击查询并选择,创建您想要桥接的每个表的引用reference从下拉列表中。(在我的例子中,我将创建我的Adwords表和我的有机排名表的引用)。

为什么是参考资料而不是副本?查询引用将只引用查询的结果,而副本将复制查询的代码,在内存中创建一个新对象。

步骤3:删除其他列

现在已经创建了两个表的引用,可以删除引用查询中的所有其他列除了要桥接的列。(在本例中,引用有机排名查询中的关键字列和Adwords引用查询中的搜索词列)。

右键单击要保留的列并选择删除其他列从下拉菜单。

您的引用查询现在应该每个都只有一列——这些列将被组合成一个桥接。

步骤4:将所有列标题更新为相同的值

下一步是确保引用表中的单个列具有相同的标题值。接下来的步骤是将所有表合并在一起。如果你的列有不同的标题,Power BI会假设它们是完全独立的列。这是区分大小写的!

例如,我将更新我的“搜索词”列为“关键字”,以匹配我的有机排名查询。您可以通过双击标题并更改值来做到这一点。

步骤4:将所有引用附加到桥接表中

现在您将选择哪个引用查询将成为您的桥接。选择哪个并不重要,但我喜欢将其重命名为bridge,以便简化操作。

当桥接查询被选中时,您将进行选择附加查询在查询编辑器中home部分的右上方。

在追加窗口中,选择要追加两个表还是3个以上的表(本例中我们只追加两个表),并选择要追加的引用。除非你重命名了引用,否则查询名后面都会有一个(2)。

如果你做的一切都正确,你应该仍然只能在桥接表中看到一列。如果你没有正确地重命名你的标题,你会有多个列在你的网桥。

第五步:重复你的桥

接下来,我们要通过选择来重复我们的组合关键字和搜索词的桥r删除行>删除错误,删除空白行,删除重复。

您还可以右键单击没有成为桥接的引用查询并取消选择使负载。这将从报表生成器可用的查询结果中删除引用表。(你不需要这个,因为你所有的数据都在你的桥中)。

您可以关闭查询编辑器并应用更改。

步骤6:创建桥和数据表之间的关系

下一步是在表和桥接之间创建关系。选择管理关系-取决于你如何命名你的头文件,你可能已经看到Power BI正在尝试识别表之间的连接,并且已经创建了一些关系。

如果你从Power BI的自动检测中看到一些已经创建的关系,请确保在需要时单击并编辑交叉过滤器方向,因为它将自动设置为单一。

要创建新关系,请选择然后突出显示每个表中应该匹配的列。基数应该是多对一(*:1),因为搜索词列有许多值,而桥接关键字列应该有一个唯一的值来连接。

您还可以在关系窗格中查看和创建关系。一个双面箭头表示快速QA的“双向”交叉过滤方向。

现在,您已经准备好使用连接的数据构建仪表板了!

在使用网桥时,请确保在适用的情况下使用网桥列值(而不是来自某个表的数据),因为网桥表应该包含来自所有多个表的所有值中的一个。

例如,当我构建散点图来比较付费转化率和有机排名时,我将从桥接表中提取关键字列。

我们完成了!我们在付费搜索词和有机关键词之间建立了一种关系。现在我们可以分析哪些术语正在转换,并开始深入研究我们如何为相关的有机关键字排名,然后寻找优化/创建内容的机会。


觉得本教程有帮助吗?订阅获取更多Power BI技巧:

订阅时事通讯

克里斯蒂娜•布莱克
克里斯蒂娜•布莱克
产品团队领导

我们乐于帮助像您这样的营销人员。

注册我们的通讯,接收更新和更多信息: