比较ssis“Foreach循环容器”中的两个excel文件

时间:2013-05-22 19:41:53

标签: sql-server sql-server-2008 tsql ssis

简介:我有多个Excel文件,它们在SSIS包中循环Foreach Loop Container

  1. 第一个Excel文件Excel1.xlsx包含旧数据(例如:我有一个名为EffectiveDate的列填充了2001-01-01到{{ 1}}

  2. 第二个Excel文件2013-04-01包含来自Excel2.xlsx的{​​{1}}新条目,还包含来自EffectiveDate的一些旧数据。

  3. 这两个文件循环遍历2013-05-01

  4. 问题:加载第一个Excel文件Excel1.xlsx后,我想将其与第二个Excel文件Foreach Loop Container进行比较,并更新Excel1.xlsx在Excel2.xlsx EffectiveDateExcel2.xlsx 匹配行EffectiveDate中的旧数据 以及Excel1.xlsx的{​​{1}}的所有其他行(或新的Entires)。

    是否可以在一个Excel2.xlsx中完成? 还有我如何在一个容器中比较两个excel文件?

1 个答案:

答案 0 :(得分:0)

您可以在一个数据流任务中拥有2个Excel源。您可以使用合并连接来比较值,并将其提供给Excel输出。

如果你想循环遍历10个excel文件,比较1,我建议你的合并连接输出是第二个excel源,并将你的容器变量映射到第一个excel源。这样,Excel文件1中的所有内容都将被放入输出文件中,然后对于每个后续文件,只会添加输出文件中未列出的条目。

如果你单独挂上任何一个步骤,我相信我或其他人可以帮助你克服困难点。