Merge Join Transformation

适用于:SQL Server Azure 数据工厂中的 SSIS Integration Runtime

合并联接转换提供了一个输出,该输出是通过使用 FULL、LEFT 或 INNER 联接将两个已排序数据集进行联接而生成的。 例如,可使用 LEFT 联接来联接包含产品信息的表与列出产品的制造国家/地区的表。 结果是一个列出所有产品及其产地国家/地区的表。

可以按照下列方法来配置合并联接转换:

  • 指定联接是 FULL、LEFT 联接,还是 INNER 联接。

  • 指定联接所使用的列。

  • 指定转换是否将空值处理为等于其他空值。

    注意

    如果不将空值处理为相等的值,则转换将如同 SQL Server 数据库引擎那样处理空值。

此转换有两个输入和一个输出。 它不支持错误输出。

输入要求

合并联接转换要求输入已排序的数据。 有关此重要要求的详细信息,请参阅 为合并转换和合并联接转换排序数据

联接要求

合并联接转换要求被联接的列具有匹配的元数据。 例如,不能将具有数值数据类型的列和具有字符数据类型的列相联接。 如果数据为字符串数据类型,第二个输入中列的长度必须小于或等于被合并的第一个输入中列的长度。

缓冲区中止

您不再必须配置 MaxBuffersPerInput 属性的值,因为 Microsoft 已进行了更改,减少了合并联接转换将占用过多内存的风险。 在合并联接的多个输入以不相等速率生成数据时,有时候可能会发生此问题。

可以通过 SSIS 设计器或以编程方式来设置属性。

有关如何设置此转换的属性的信息,请单击下列主题之一:

合并联接转换编辑器

可以使用 “合并联接转换编辑器” 对话框指定联接类型、联接列和输出列,以合并通过联接组合的两个输入。

重要

合并联接转换要求输入已排序的数据。 有关此重要要求的详细信息,请参阅 为合并转换和合并联接转换排序数据

选项

联接类型
指定要使用内部联接、左外部联接还是完全联接。

交换输入
通过使用“交换输入”按钮来交换输入的顺序。 对于左外部联接选项,此选项可能有用。

输入
对于要在合并的输出中包含的每个列,请首先从可用输入列表中相应地进行选择。

输入显示在两个单独的表中。 请选择要包含在输出中的列。 通过拖动列可以在表之间创建联接。 若要删除某个联接,请选定该联接,再按 Delete 键。

输入列
从所选输入的可用列的列表中选择要包含在合并的输出中的列。

输出别名
为每个输出列键入一个别名。 默认值为输入列的名称;不过,您也可以任选一个唯一的描述性名称。

另请参阅

合并转换
Union All 转换
Integration Services 转换