【问题标题】:Return last ID from a column返回列的最后一个 ID
【发布时间】:2016-08-30 12:45:12
【问题描述】:

有没有办法在不浏览所有记录的情况下从列(称为ID_MES)返回最后一个 ID?

我的工作才华横溢:

【问题讨论】:

  • 使用大写字母被认为是尖叫。您可能想edit您的问题。由于我们无法看到您的组件内部,因此无法提供帮助。 ID_MES 的列是什么?你想用最后一个 id 做什么?
  • @Sami Meskaoui:我相信您应该编辑您的问题,显示 tFileInputDelimited 的架构,并且如果输入文件中存在 ID_MES 列,是否有任何排序标准?

标签: oracle csv talend


【解决方案1】:

如果不浏览记录,就不可能找出最后的记录。但是,我们可以将组件之间的数据流最小化,如下所示。

为简单起见,我将输入演示为固定流输入。 逻辑如下。

  1. 假设每条记录有“N”个列,那么首先我们将使用“tFilterColumns”考虑我们感兴趣的列并消除所有其他列。
  2. 使用 tAggregateRow 查找该列的最后一个值。
  3. 将值放入 globalMap [或] 简单地使用 tJavaRow 显示值。

找到下面我开发的工作。

如下图所示,我创建了一个包含 6 列和 12 条记录的固定流。

我只对“ID_MES”列感兴趣,因此我正在使用 tFilterColumns。通过使用这个组件,我们可以消除不必要的数据流。

然后使用了一个 tAggregateRow,在它的组件属性的操作部分,我使用了 'ID_MES' 作为输出列和 'last' 函数。

最后输出如下。

【讨论】:

  • 如果作者不需要其他字段或使用单独的流程处理这些字段,则此作品。很好的解决方案。
  • 非常感谢
猜你喜欢
  • 2020-04-27
  • 2019-05-31
  • 2018-07-11
  • 1970-01-01
  • 2014-06-19
  • 2013-09-13
  • 2016-06-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多