嗨,我是新来的,我有一个问题:我有一张这样的桌子:
model | type | color| q
--1---| --1-- | blue | 1
--1---| --2-- | blue | 2
--1---| --1-- | red | 1
--1---| --2-- | red | 3
--2---| --1-- | blue | 4
--2---| --2-- | blue | 5 我想为每个按类型分组的模型创建一个表(以csv或excel格式导出),将组的值作为标题,并将Q值作为值:
table-1.csv
type | blue | red
--1--| -1-- | -1-
--2--| -2-- | -3- table-2.csv
type | blue
--1--| -4-
--2--| -5- 我试过使用行反规格化程序,但什么都没有。有什么建议吗?
发布于 2016-10-25 00:34:00
通常,看到你为了提供帮助而做了什么是有帮助的,但我知道这一步的“帮助”是多么违反直觉。
在将行发送到去规格化步骤之前,请确保按Model和Type对行进行排序。然后试一试:

至于将输出拆分成文件,有几种方法可以处理。使用Model字段查看Switch/Case步骤。
另外,如果您还没有找到它们,请查看PDI下载中附带的示例文件。它们应该在...pdi-ce-6.1.0.1-196\data-integration\samples.中它们有时会比在线文档更有帮助。
发布于 2016-12-02 08:41:32
如果颜色数未知,则不能在这里使用行反规格化器,而且,您也不能动态定义文本输出字段。
在不使用java和js步骤的情况下,我可以看到几种方法。其中一个是基于以下思想的:我们可以准备具有两列的行:
Row Model
type|blue|red 1
1|1|1 1
2|2|3 1
type|blue 2
1|4 2
2|5 2然后,我们可以使用Model字段为每一行准备文件名,然后使用文本输出轻松地输出所有行,其中文件名取自filename字段。在这种情况下,所有记录都将导出到两个文件中,而无需额外的工作。
您可以在这里找到示例转换:copy-paste me into new transformation
请注意,这是一个仅适用于csv的示例解决方案。此外,只有当模型中的每种类型都有相同数量的颜色时,它才有效。这只是一个如何使用汤匙的提示,它不是一个完整的解决方案。
https://stackoverflow.com/questions/40128853
复制相似问题