SSIS - 使用源 table 中的非匹配行更新目标 table (使用 Pentaho 数据集成)
SSIS - Updating destination table with the non matching rows from origin table (Using Pentaho Data Integration)
这是我的问题:
我想在我的目的地更新 table 与来源不匹配的行,这是一个示例:
TABLE A(来源)
1234 3456 4235 5664 2345 2349
TABLE B(目的地)
1234
3456
4235
5664
2345
如您所见,行 "2349" 是否不在目标 table (TABLE B) 中,所以有一种方法ssis(我正在使用 pentaho 数据集成)到 'say':嘿!查看 table A 和 table B 之间的不匹配行,然后用那些不匹配的行更新 table B?
是的,根据您的问题描述,您想将 table A 中不存在的行插入到 table B 中。
您可以在一次转换中完成:
- 通过两个 Table 输入 步骤,您 select 来自 table A 的所有行在其中一个步骤中,您 select 来自 table B 的所有行在另一个中。
- 您添加两个 排序行 步骤,每个步骤都在 Table 输入之后,以根据您要比较的 column/s 对行进行排序
- 您添加了一个 Merge join 步骤,并且两个 Sort rows 步骤都将它们的数据传递给 Merge join,您定义了一个左连接,并按要比较的列连接行, 左边是来自 Table A 的行,右边是来自 Table B 的行,所以输出都是来自 Table A 的行加上来自 Table 的行的信息] 满足合并条件的B.
- 您添加一个 Filter 步骤以仅获取 Table A 中的行而没有来自 Table B
的信息
- 您使用 Insert table 步骤将这些行插入到 Table B 中。
这是我的问题:
我想在我的目的地更新 table 与来源不匹配的行,这是一个示例:
TABLE A(来源)
1234 3456 4235 5664 2345 2349
TABLE B(目的地)
1234 3456 4235 5664 2345
如您所见,行 "2349" 是否不在目标 table (TABLE B) 中,所以有一种方法ssis(我正在使用 pentaho 数据集成)到 'say':嘿!查看 table A 和 table B 之间的不匹配行,然后用那些不匹配的行更新 table B?
是的,根据您的问题描述,您想将 table A 中不存在的行插入到 table B 中。 您可以在一次转换中完成:
- 通过两个 Table 输入 步骤,您 select 来自 table A 的所有行在其中一个步骤中,您 select 来自 table B 的所有行在另一个中。
- 您添加两个 排序行 步骤,每个步骤都在 Table 输入之后,以根据您要比较的 column/s 对行进行排序
- 您添加了一个 Merge join 步骤,并且两个 Sort rows 步骤都将它们的数据传递给 Merge join,您定义了一个左连接,并按要比较的列连接行, 左边是来自 Table A 的行,右边是来自 Table B 的行,所以输出都是来自 Table A 的行加上来自 Table 的行的信息] 满足合并条件的B.
- 您添加一个 Filter 步骤以仅获取 Table A 中的行而没有来自 Table B 的信息
- 您使用 Insert table 步骤将这些行插入到 Table B 中。