在 talend 中根据目标 table 的条件加载数据

Loading data based on condition of target table in talend

我有一个 table(target),它有 5 行,其中一列 name:slno 有值 (12,13,14,34,56),我需要从我的源 table 根据目标的最大值来定位。

示例:

如果在源 table 中,slno 列的值是 (12,13,14,34,56,88,89,90,99),那么只有 (88,89,90,99) 值应该转到目标(连同所有行值),基本上我需要找到最大值从目标并基于它我需要在该值之后加载行。

我尝试使用 tJavaRowtSetGlobalVartAggregateRow,但不知道如何映射。

有多种方法可以做到这一点。

如果您的源和目标 table 在同一个数据库中,您可以像这样过滤源查询:

select *
from source
where slno > (select max(slno) from target)

然后加载目标中的行 table。

但如果不是,您可以在 Talend 中完成:

对目标的查找得到 slno 的最大值:

SELECT max(slno)
FROM target

其架构仅包含一列 (max_slno):

并且在 tMap 中,只发送源的 slno 大于目标的 slno 最大值的行: