在 Pentaho 中应用左连接

Applying Left Join in Pentaho

我正在尝试创建转换,需要通过使用 Merge Join 来基于这样的查询合并两个数据库,我有点搞不清楚我应该填写什么 First StepSecond Step 查找每个查询格式。

查询格式:

SELECT * FROM A a LEFT JOIN B b on a.value=b.value

SELECT * FROM A a LEFT JOIN B b on b.value=a.value

有多种方法可以做到这一点。 您可以使用 TableInput Step 并简单地编写您的查询。无需执行任何其他操作即可实现上述查询。

有多种方法可以实现。

  • Table input step中加入sql。如果您的 table 在同一个数据库中,请快速提出一个肮脏的解决方案,但不要告诉 PDI 专家您是这样做的。

  • 如果您知道每个 A 记录只有一个 B 记录,请使用 Lookup Stream Step。非常非常非常有效。主要流程是 A,查找步骤是 B。

  • 如果每个 A 记录有很多 B 记录,请使用 Join Rows。不要害怕,你并没有真正做笛卡尔积,因为你可以把你的条件 a.value=b.value.

  • 同样的情况,你也可以做一个Merge join。第一步就是你在sqlselect语句中写拳的步骤。