【问题标题】:How to query multiple tables with one input in Talend?如何在 Talend 中用一个输入查询多个表?
【发布时间】:2013-08-05 18:51:46
【问题描述】:

举个简单的例子,我有一个 DB2Input -> tMap -> DB2Output。在 DB2Input 中,我编写了一个从两个表中获取数据的查询。

我收到警告:Parameter(query): Schema is different from the query。

我只需要指定其中一张表吗?谢谢。

更新:

嗯,我想我明白了。您单击“编辑架构”按钮并手动输入查询选择的列。

【问题讨论】:

    标签: sql database db2 etl talend


    【解决方案1】:

    这是我在这些情况下倾向于做的事情(只查询两个表):

    DB2Input --------
                    -
                   tMap ------- DB2Output
                    -
    DB2Input --------
    

    换句话说:

    但是,当您已经有一个复杂的查询时,您可以使用一个输入组件,就像您在 EDIT 中提到的那样。

    在这种情况下,您可以按“猜测查询”按钮,Talend 可能会成功检测结果架构。为此,您需要选择“内置”架构选项。

    【讨论】:

      【解决方案2】:

      我认为我们最好先通过在数据库中编写复杂查询来创建一个视图,然后在 talend 组件中将该视图用作表,以避免在 talend 中创建多个输入和连接:)

      【讨论】:

        【解决方案3】:

        如果您有一个非存储库查询(手动输入/调整/其他)并且您收到“架构与查询不同”警告,您可以使用“猜测架构”按钮。如果系统运行正常,它应该查看查询中的字段,并为您提供一个输出模式来匹配它们。如果系统不理解,您可能需要调整字段类型。

        我经常使用这个(编写我自己的输入 SELECT 查询)来根据另一个 db 中的记录来控制来自一个 db 的输入...

        【讨论】:

          猜你喜欢
          • 2020-09-05
          • 1970-01-01
          • 1970-01-01
          • 2011-04-21
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多