# 联接处理器

将几个现有数据集转换为一组新的组合记录。

联接处理器通过匹配两个数据集之间的公共值来映射、组合和转换分层数据。

## 联接属性

要配置为使用联接组合您的记录的属性。您可以在处理器配置中添加任意数量的键。

配置

| 属性 | 配置 |
| --- | --- |
| 加入类型 | 在列表中选择所需的联接类型：<br><br><ul> <li> <p><span>内部联接</span>：使用此联接类型来比较具有匹配列值的两个数据集，并列出所有结果对。结果集中会忽略彼此不匹配的值。</p> </li> <li> <p><span>左外部联接</span>：使用此选项可以在联接的输出列表中保留左数据集的所有值。与右侧数据集中任何行都不匹配的值将在结果集中以 NULL 列出。</p> </li> <li> <p><span>右侧外部联接</span>：使用此选项可以组合左侧和右侧外部联接。与左侧数据集中任何行都不匹配的值将在结果集中以 NULL 列出。</p> </li> <li> <p><span>完整外部联接</span>：使用此选项可以组合左侧和右侧外部联接。每个没有匹配值的值都将在结果集中以 NULL 形式列出。</p> </li> </ul> |
| 合并输入记录 | 启用此选项可以对左右数据集的层次结构进行均衡和分组。<br><br>默认情况下，如果不启用此选项，左数据集和右数据集的输出结构将与联接操作前相同。 |
| 条件 | <ul> <li><span>左键</span>：选择或输入左侧数据集中现有记录的路径。键入时可使用自动完成功能。 </li><li><span>右键</span>：选择或输入右侧数据集中现有记录的路径。键入时可使用自动完成功能。</li> </ul> |

要重命名处理器，请单击将鼠标悬停在处理器的默认名称上时显示的![编辑](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Resources/Images/TransformationFlow/processor-select-columns-edit_26x24.png)编辑图标。

要编辑其描述，请单击悬停在描述上时显示的![编辑](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Resources/Images/TransformationFlow/processor-select-columns-edit_26x24.png)编辑图标。

## 有关联接操作的其他信息

联接处理器允许您将四种不同类型的联接操作应用于分层数据。有关联接操作的更多信息和示例，请参阅[Join](https://help.qlik.com/zh-CN/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/ScriptPrefixes/Join.htm)。

### 内部连接

这种类型的联接操作用于：

* 匹配两个数据集之间的公共值。
* 使用所有匹配的对创建一个结果集。

结果集确定如下：

* 如果满足串联语句（数据集 L 与数据集 R 匹配），则所有匹配的记录都会合并并返回到结果集中。
* 如果不满足联接语句，则忽略不匹配的记录。

### 左侧外部联接

这种类型的联接操作用于：

* 匹配两个数据集之间的公共值，并保留左侧数据集中存在的所有值。
* 创建一个组合这些记录的结果集。

结果集确定如下：

* 如果满足联接语句（数据集 L+ 中的所有内容都在两个数据集中匹配），则左数据集中的所有记录以及左数据集和右数据集之间的匹配记录将合并，并返回到结果集中。
* 如果不满足联接语句，则忽略不匹配的记录。

### 右侧外部联接

这种类型的联接操作用于：

* 匹配两个数据集之间的公共值，并保留右侧数据集中存在的所有值。
* 创建一个组合这些记录的结果集。

结果集确定如下：

* 如果联接语句（数据集 L+ 中的所有内容都在两个数据集中匹配），则右数据集中的所有记录以及左数据集和右数据集之间的匹配记录将合并，并返回到结果集中。
* 如果不满足联接语句，则忽略不匹配的记录。

### 全部外部连接

这种类型的联接操作用于：

* 保留左侧和右侧数据集中匹配的所有值。
* 创建一个组合这些记录的结果集。

结果集确定如下：

* 如果联接语句（数据集 L+ 中的所有内容都在两个数据集中匹配），则左和右数据集中的所有记录以及他们之间的匹配记录将合并，并返回到结果集中。
* 如果不满足联接语句，则不匹配的记录将在结果集中以 NULL 形式列出。