SSIS数据流如何删除重复行但在SSIS中记录重复项

时间:2012-09-06 18:30:52

标签: ssis duplicates duplicate-removal

我从Remove duplicates in SSIS Data Flow了解了如何使用排序转换来删除具有重复数据值的行。

在我的情况下,我正在读取分隔文件,需要消除重复项,并记录具有重复键的行。我需要将这些行输出到另一个分隔文件,并将其通过电子邮件发送给客户,以便他们可以更正数据并重试。

但是,我无法弄清楚如何做到这一点。我将尝试使用Aggregate和Merge Join,但我希望这样做有一个已知的模式。

3 个答案:

答案 0 :(得分:6)

您好我的回答可以处理任何数据,因为互联网中的某些解决方案需要行的主键,不需要我的解决方案主键。 这里是样本结构和样本数据集:

a   b
1   23
1   23
16  59
12  12
13  45
12  12
45  56

enter image description here

只需按所有列分组并添加最后一列 - 全部计数(如果有两列以上或更多列,则只需要在“Aggregate”元素中将所有列和foreach设置为group by in the end put“Count All “专栏”:

enter image description here

然后只需添加条件分割元素并获取多于1个相同行的所有行:

enter image description here

真实示例:

enter image description here

答案 1 :(得分:2)

go through a few options on my blog删除数据流中的重复项,a little footnote here说明如何“保存”重复行以进行备用处理。

答案 2 :(得分:0)

可以通过脚本编写。

首先,您将use a script to iterate through the dataset并以编程方式识别重复项。 Then you could write entries to the log file for the dupes that you find