如何在 Talend 的输入中创建分组并在每个输入中创建特定行 select?

How to make groups in an input and select a specific row in each of them in Talend?

我正在研究 Talend 转换过程(我们使用的是 Talend 6.4)。 ,我不知道如何实现当前的要求。

我有一个输入包含:

要执行的规则是:

查看对一些虚拟数据应用这些规则的转换:

我首先想到的是:

  1. 按帐户、产品排序,End_date(空值优先)
  2. select各组第一

但是我不够熟练不知道Talend中是否存在二次转换

此致,

皮埃尔

非常有趣的 Talend 问题。 您需要创建类似此作业的内容。

here a link to the zip file to import in your Talend

@MBDIA 的回答似乎有效,但我想分享我们为满足要求所做的工作。

在这里查看我们的 Talend 进程:

第一个 tMap (tMap_3) 的作用类似于 tReplicate 和 tMap,并发送:

  • 在上部分支中只有帐户和产品引用,然后由 tAggregateRow_1.
  • 删除重复数据
  • 在较低的分支中,所有数据和计算字段使我们能够处理日期丢失的情况(而不是默认为 31/12/9999,我们计算一个标志(0 或 1),我们在之后的排序步骤中使用)。

在过程的第二部分,我们首先将排序应用于帐户、产品、空日期标志(之前计算)、结束日期(desc)的整个数据,并使用第二个 tMap 进行连接两个分支(在帐户 x 产品上),仅保留 First Match 以便根据我们的要求保留第一条记录。