在 SSIS 中组合两个输入平面文件

Combing two input flat files in SSIS

我有两个以下格式的平面文件输入:

文件 1-

AccountNumber1    Data1
AccountNumber1    Data2
AccountNumber1    Data3
AccountNumber2    Data1
AccountNumber3    Data1

文件 2-

AccountNumber1    OtherData1
AccountNumber1    OtherData2
AccountNumber2    OtherData1
AccountNumber2    OtherData2
AccountNumber3    OtherData1

我需要应用实现以下目标的转换:

AccountNumber1    Data1
AccountNumber1    Data2
AccountNumber1    Data3
AccountNumber1    OtherData1
AccountNumber1    OtherData2
AccountNumber2    Data1
AccountNumber2    OtherData1
AccountNumber2    OtherData2
AccountNumber3    Data1
AccountNumber3    OtherData1

也就是说,我需要将所有帐户行放在一起。 Union 任务似乎无法完成我需要的任务,因为我必须维护第一个文件的任意排序顺序,并简单地在帐号匹配的地方插入文件 2 的行。有没有办法在没有脚本任务的情况下完成此任务?

对两个源使用派生列,将一列 1 添加到第一个,将一列 2 添加到第二个 table:

表 1:

 AccountNumber1  ,  Data1 , 1

 AccountNumber1  ,  Data2 , 1

 AccountNumber1  ,  Data3 , 1

 AccountNumber2  ,  Data1 , 1

 AccountNumber3  ,  Data1 , 1

表 2:

 AccountNumber1  ,  OtherData1 , 2

 AccountNumber1  ,  OtherData2 , 2

 AccountNumber2  ,  OtherData1 , 2

 AccountNumber2  ,  OtherData2 , 2

 AccountNumber3  ,  OtherData1 , 2

现在,先使用 Union All,然后按顺序使用 Sort by AccountNumber 和 DerivedColumn。