Supported Join Types

135 阅读2分钟

image.png

支持的连接类型

通常您的数据不存储在单个实体中。因此,在对数据进行查询时,需要将存储在多个实体中的记录组合起来。这也称为连接来自多个实体的记录。

为此,只需将实体拖到聚合中即可。它们会自动连接在一起,但您始终可以在“源” 选项卡中自定义它们的组合方式。有四种方法可以连接来自两个实体的记录:

  • 只获取在两个实体中都匹配的记录。
  • 从第一个实体中获取所有行,即使第二个实体没有匹配项。
  • 从两个实体中获取行。
  • 对于第一个实体中的每条记录,将其与第二个实体中的记录进行匹配。

在下面的示例中,我们将组合以下两个实体:

工程师和问题实体

只获取匹配的记录

要仅检索已分配工程师的问题,请使用Only With

“注:如果聚合中的两个实体之间存在关联,则默认连接方式为Only With”

获取匹配的记录

请注意尚未返回尚未分配工程师的问题。

从实体中获取所有记录,即使它们没有匹配项

要检索所有问题,无论是否为他们分配了工程师,请使用With 或 Without

在此连接类型中,连接条件中实体的顺序会影响返回的行。这个想法是从第一个实体中检索所有记录,并将第二个实体的行组合到它们中。所以如果你交换实体的顺序,你会得到不同的结果。

从实体中获取所有记录

请注意,对于未分配工程师的问题,包含工程师信息的列包含默认值。

从两个实体中获取行

要获取所有问题和所有工程师,即使它们之间没有匹配项,也可以使用With

从两个实体中获取行

请注意,对于未分配工程师的问题,包含工程师信息的列包含默认值。

对于没有分配给他们的问题的工程师,问题信息包含默认值。

此选项对于将数据导出到第三方系统特别有用。

合并所有记录,忽略关系

要将一个实体的每条记录与第二个实体的所有记录结合起来(例如:创建一个将每个团队与每个对手团队配对的列表),只需确保在“源”选项卡中没有定义 Join 即可。

要将每个团队与其对手配对,请将团队实体两次添加到您的聚合中。

合并所有记录

然后过滤聚合以确保团队不与自己配对。

image.png

image.png