Pentaho 将列转置为行

Pentaho Transpose column to rows

我在 Pentaho 中有这个 table。

YYYYMM  Value   Counts

201701  InSTOCK   10
201702  InSTOCK   5
201703  InSTOCK   2
201704  InSTOCK   4
201702  newstock  4
201703  newstock  8
201704  newstock  8
201701  reserve   3
201702  reserve   3

我想要这样的数据

 YYYYMM   InSTOCK   newstock  reserve
 201701    10                   3
 201702    5          4         3
 201703    2          8
 201704    4          8

有没有办法像这样使用 Pentaho 或 SQL 查询来取消透视?

是的,您可以使用 SQL 或 Pentaho。使用 Pentaho,您可以使用步骤 Row denormaliser.

要使用行去规范化器,您需要事先按照用于对逆透视操作进行分组的列对行进行排序。在运算符中,您定义 group columnskey column 以执行 unpivot,以及新列:

  • 目标字段名是新列的名称
  • Value fieldname 是您用来填充此 Target fieldname 的传入列的名称
  • 键值是您在上面选择的键字段(列)执行反透视的值。在您的示例中,Key value 和 Target fieldname 具有相同的值,但您可以为您的值定义不同的列名。