怎样在存储过程中使用输入参数,然后用于 Where ...In (@参数)
定义输入参数:
@InputID varchar(100)
比如可以输入:0001,0002,0003
然后使用
...
WHERE InputID IN (@InputID) //但是这个语句不管用!
我想实现的效果是:WHERE InputID IN (0001,0002,0003)
------解决方案--------------------
1)动态
exec('select * from tb where InputID IN ('+@InputID+')')
调用
exec procname '''0001'',''0002'',''0003'''
2)
charindex
select * from tb where charindex(','+ltrim(inputid)+',',','+@InputID+',')>0
------解决方案--------------------
create pro p_t @s varchar(100)
as
begin
exec('select * from tb where inputid in ('+@s +')')
end