gpt4 book ai didi

sql-server - 如何在 SSIS 中使用 Pivot 对行(基于客户 ID)进行分组?

转载 作者:行者123 更新时间:2023-12-04 02:47:36 24 4
gpt4 key购买 nike

我正在练习 SSIS,目前正在从事 Pivot 转换。这就是我正在做的事情。我使用以下数据创建了一个数据源(表名:Pivot)。

enter image description here

使用 SSIS,我创建了一个数据透视包以包含以下列

PersonID --- Product1 --- Product2 --- Product3。

这就是我能够将数据透视表创建到文本文件的地方。但是输出没有按 PersonID 分组。

我当前的输出是

enter image description here

正如我们所见,转换并没有根据SetKey(PersonID : PivotUsage =1)

我希望得到的输出是

enter image description here

数据根据 PersonID 分组。

我在这里错过了什么?

编辑:回到我正在关注的示例,我按如下方式重新排序了输入数据。

enter image description here

输入数据是否每次都需要按此顺序/模式?我遇到的大多数示例都遵循类似的模式。

最佳答案

是的,输入数据需要根据您所关注的内容进行排序:

To pivot data efficiently, which means creating as few records in the output dataset as possible, the input data must be sorted on the pivot column. If the data is not sorted, the Pivot transformation might generate multiple records for each value in the set key, which is the column that defines set membership. For example, if the dataset is pivoted on a Name column but the names are not sorted, the output dataset could have more than one row for each customer, because a pivot occurs every time that the value in Name changes.

这是对 Pivot Transformation 的直接引用MSDN 上的文档。 (强调已添加。)

关于sql-server - 如何在 SSIS 中使用 Pivot 对行(基于客户 ID)进行分组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18579299/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com