SSIS - 使用execute sql task的完整结果集作为另一个执行sql任务的输入

时间:2017-05-22 08:28:29

标签: sql-server ssis

我有一个带有两个Execute SQL Tasks的SSIS包,第一个包含一个简单的select语句,用于从表中选择一个列,结果集是ID列,我是必须使用第二个Execute SQL Task的输入来从另一个匹配IDs的表中获取记录。基本上我必须在SSIS中实现以下SQL语句:

SELECT * FROM TableB WHERE ID IN
(
   SELECT ID FROM TableA
)

如何配置第二个Execute SQL task以使用第一个Execute SQL task的结果集作为输入来执行上述SQL语句?

1 个答案:

答案 0 :(得分:0)

一种解决方案是使用第一个执行SQL任务的结果填充对象变量。

然后有一个脚本任务循环遍历对象变量并动态构建第二个执行SQL任务的SQL字符串,并将其放入字符串变量中。

最后,第二个执行SQL任务将字符串变量用于其SQL查询。