【问题标题】:How to get the difference between two columns using Talend如何使用 Talend 获取两列之间的差异
【发布时间】:2021-09-01 09:35:23
【问题描述】:

我有两张 Excel 表格,我想使用 talend 作业进行比较

第一个名为 Compare_Me_1 的 Excel

PN STT Designation
AY73101000 20 RC0402FR-0743K2L
AY73101000 22 RK73H1ETTP4322F
AY73101000 22 ERJ-2RKF4322X
Ac2566 70 CRCW040243K2FKED

名为 Compare_Me_2 的第二个 excel

PN STT Designation
AY73101000 20 RC0402FR-0743K2L
AY73101000 22 RK73H1ETTP4322F
AY73101000 21 ERJ-2RKF4322X
Ac2566 70 CRCW040243K2FKED

我想要实现的是这个输出

PN1 STT1 STT2 STT_OK_Ko Designation1 Designation2 Designation_Ok_Ko
AY73101000 20 20 ok RC0402FR-0743K2L RC0402FR-0743K2L ok
AY73101000 22 22 ok RK73H1ETTP4322F RK73H1ETTP4322F ok
AY73101000 22 21 ko ERJ-2RKF4322X ERJ-2RKF4322X ok
Ac2566 70 70 ok CRCW040243K2FKED CRCW040243K2FKED ok

因此,为了实现这一目标,我开发了一个如下所示的天才工作:

在我的 tMap 中,我将 PN 与 leftouterjoinAll Matches 对应联系起来。

为了获得例如 STT_Ok_KO,我使用下面的代码来比较我的两个输入:

(!Relational.ISNULL(row14.STT) && !Relational.ISNULL(row13.STT) &&
 row14.STT.equals(row13.STT)  ) ||

(Relational.ISNULL(row14.STT) && Relational.ISNULL(row13.STT))
?"ok":"ko" 

这是实现我的输出的正确方法吗?如果没有,建议我使用其他方法

欢迎提出任何建议。

【问题讨论】:

    标签: talend


    【解决方案1】:

    您可能需要遵循以下长步骤:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-28
      • 1970-01-01
      • 2016-05-02
      • 1970-01-01
      • 1970-01-01
      • 2022-01-16
      相关资源
      最近更新 更多