Kettle Pentaho - 从两个表中获取记录与公共密钥(Merge)不匹配

时间:2013-09-26 03:19:24

标签: kettle

我有两个表正在转换,我需要从两个表中获取不符合公共密钥的数据。即我正在加入表A和表B 从表A我需要那些表B中没有的记录。 如果有人可以告诉我在水壶勺中可以使用哪一步来进行上述改造,将会很有帮助

1 个答案:

答案 0 :(得分:0)

您可以使用合并加入步骤来实现此目的。在“连接类型”下,选择“LEFT OUTER”。完成此步骤后,您的结果将如下所示:

KEY_A | value_a | key_b | value_b

1 | 1 | null |空

2 | 2 | null |空

3 | 3 | 3 | 3 |

然后选择Filter rows步骤并将key_b设置为字段,将条件设置为IS NULL。

如果您还需要key_a与key_b不匹配的记录,请选择Join Type为FULL OUTER。

如果两个表都在相同类型的数据库中,则可以通过使用表输入步骤并在查询本身中进行连接来轻松实现:

SELECT table_a.key
, table_a.value
FROM table_a
LEFT JOIN table_b
ON table_a.key = table_b.key
WHERE table_b.key IS NULL