根据外部结果集执行数据库查询
在 VS 2013 内的 SSIS 中,您可能会遇到需要获取以下列表的场景来自一个数据库的 ID,随后使用此列表来查询另一数据库。可以使用多种方法解决此场景。
方法 1:使用查找转换
利用查找转换根据匹配条件从单独的表中检索特定列。但是,此方法不会过滤行,而只是附加第二个表中的值。要根据 ID 列表过滤行,请考虑管理查找转换中的错误输出。这允许您忽略行或将它们重定向到错误输出以进行过滤。
方法 2:使用脚本任务
避免将所有数据加载到内存中随后的过滤,利用脚本任务来构造所需的查询动态。此方法使您能够使用从第一个数据库检索的 ID 列表构建 WHERE IN 子句。
方法 3:使用执行 SQL 任务
与第二个类似方法中,执行 SQL 任务允许您使用 SQL 命令动态创建 IN 子句。然后,生成的 SQL 语句可以用作 DataFlow 任务中的 OLEDB 源。
需要注意的是,这些方法具有不同的性能考虑因素和内存消耗。根据您场景的具体要求和涉及的数据量选择最合适的方法。
以上是如何根据 SSIS 中另一个数据库的结果高效地查询数据库?的详细内容。更多信息请关注PHP中文网其他相关文章!