如何合并Pentaho中的列?

时间:2014-04-16 13:20:54

标签: pentaho

我正在寻找将4列合并为1个新列的步骤。对于每一行,四列中只有一列具有填充的单元格。此外,列的类型为String。

3 个答案:

答案 0 :(得分:6)

您也可以使用Calculator步骤执行此操作。优点是它不需要放入代码,从而维护视觉隐喻,并且它比JavaScript更快。

在计算器步骤中,当您定义新字段时,该字段可用于同一步骤中的后续计算。因此,如果我有Field_000 ... Field_003,我可以像这样配置步骤:

Calculator Setup

计算器步骤的输出将有两个新字段,'tmpField1'和'outField',它们具有四个字段的串联。

BTW,如果'填充'表示该字段具有非空值,则可以使用计算器的NVL函数来实现相同的功能。这基本上是一个Coalesce操作。

答案 1 :(得分:0)

其中一个过程。

你可以使用修改过的java脚本步骤,

在那里你可以给出你想要给出的字段标题并执行连接。

答案 2 :(得分:0)

  

这很简单。最快和最好的方法是使用Concat Fields Step。

     

转到转换文件夹 - >拖动" Concat Fields"进入设计画布,

     

在FIELDS选项卡中,只需选择要连接的列。此外,您可以提供格式和类型(即使您尝试连接它将起作用的整数字段)。

     

在" TARGET FIELD NAME"中输入您的连接列名称。并为连接列值指定分隔符。最后单击“确定”。

     

注意:不使用Javascript进行简单转换会降低性能