Pentaho Kettle-如何更新水壶中已排序行的空值

时间:2019-04-11 16:46:13

标签: pentaho kettle pentaho-data-integration

我尝试通过水壶将数据从表1转换为表2。情况是,在表1中数据显示如下:

  c1       c2
  -------  ----------  
  A        1     
  A        null
  A        null
  B        2
  B        null
  B        null

我希望这些步骤将第1列中的值按A,B ...分组,并替换第2列中的空值。 因此输出将像:

c1       c2
-------  ----------  
A        1     
A        1
A        1
B        2
B        2
B        2

我尝试使用称为数据库查找的步骤替换所有空值,但是显然它不能先将第1列中的值分组,然后再基于第2列进行替换。

我知道使用sql脚本可以完成这项工作,但是在spoon中的某些步骤也可以做到这一点?任何帮助/建议将不胜感激。

1 个答案:

答案 0 :(得分:0)

某些输入步骤具有“重复”功能,但是工作流没有准备好使用此功能的任何步骤,因此我使用此功能来执行此javascript代码。

var row, last_row;

if (row != null) {
    //Save the data of the current row.
    last_row = row;

}else {
    //swap null value with last non-null value.
    row = last_row;

}

您只需要为希望重复的列更改名称“行”。在您的示例中,它将是c2和last_c2。

相关问题