Sql server 2008 如何在SSIS 2008中创建动态IN查询?
我有一个变量@csv,它包含一个逗号分隔的值,例如: -a -a、 b -a、 b,c 我需要在数据流中的OLE DB源中的查询中传递它,以创建查询,例如: 从表格中选择计数(1),其中col1位于@csv中 因此,如果@csv=“a,b”,那么在内部它应该解析为 从col1位于“a”和“b”中的表中选择COUNT(1) 如何在SSIS 2008中最好地实现这一点?我可以避免脚本组件创建动态查询并将其存储在变量中吗 如何在SSIS中最好地实现这一点 2008? 我可以避免使用脚本组件吗 创建动态查询并存储 它是一个变量吗 最简单/最好的方法仍然是使用脚本组件 否则,您可以:Sql server 2008 如何在SSIS 2008中创建动态IN查询?,sql-server-2008,ssis,Sql Server 2008,Ssis,我有一个变量@csv,它包含一个逗号分隔的值,例如: -a -a、 b -a、 b,c 我需要在数据流中的OLE DB源中的查询中传递它,以创建查询,例如: 从表格中选择计数(1),其中col1位于@csv中 因此,如果@csv=“a,b”,那么在内部它应该解析为 从col1位于“a”和“b”中的表中选择COUNT(1) 如何在SSIS 2008中最好地实现这一点?我可以避免脚本组件创建动态查询并将其存储在变量中吗 如何在SSIS中最好地实现这一点 2008? 我可以避免使用脚本组件吗 创建动态
您可以创建一个变量来存储查询,并使用表达式组合其值,如: 在此处输入图像描述“> 变量列表: 选项1:如果使用OLE DB,请从变量中选择
SQL命令并绑定变量@sqlQuery:
选项2:如果使用ADO.NET,请转到数据流任务的属性,展开表达式
,并使用变量@sqlQuery+绑定ADO.NET Source>SqlCommand,确保ADO.NET Source>数据访问模式
是SQL命令
:
选项3:如果使用执行SQL任务
,请展开表达式
,并将SqlStatementSource与变量@sqlQuery+绑定,确保SQL源类型
是直接输入
: