我想知道有人可以帮助我。我想构建一个像这样的动态sql命令
SELECT * from Table1 Where CID > 10 + and LID in (11,12,15,20)
为此我设置了两个var并设置如下面的表达式
"SELECT * from Table1 Where CID >" + (@User:Var1) + "and LID in "+(@User:Var2)
var1是从单行sql任务结果集生成的Int64类型,它工作正常,而Var2是一个Object类型,我在上面的语句中取代“和Lid(11, 12,15,20)”。
非常感谢任何帮助
答案 0 :(得分:0)
我不确定这是否是您正在寻找的,我使用AdventureWorks中的一个表作为示例。
Declare @var1 int = 10
Declare @var2 varchar(100) = '(11,12,15,20)'
Declare @sql varchar(max)
= 'SELECT * FROM [dbo].[DimEmployee] WHERE EmployeeKey > ' +
CAST(@var1 as varchar(10)) + ' AND ParentEmployeeKey IN ' +
@var2
Exec(@sql)
如果没用,请忽略。