不太明白你的意思!我这么描述看看是否合意! declare @str1 varchar(20) declare @sqlstr varchar(1000) select @str1='1,2,3,4,5' select @sqlstr='' select @sqlstr=@sqlstr+'select * from admin where id in('+@str1+')' exec (@sqlstr)
如果是數字就可以用樓上的方法了,如果是字串要處理一下. create table t(id varchar(02)) insert into t select 'aa' insert into t select 'bb' insert into t select 'cc' insert into t select 'dd'declare @s varchar(100) set @s='aa,bb,cc,dd'set @s=replace(@s,',',''',''') exec('select * from t where id in (''' +@s+''')')drop table t
SELECT * FROM admin WHERE CHARINDEX(','+RTRIM(id) + ',' + ',1,2,3,4,5,')>0 SELECT * FROM admin WHERE ',1,2,3,4,5,' LIKE '%,'+RTRIM(id) + ',%'
declare @str1 varchar(20)
declare @sqlstr varchar(1000)
select @str1='1,2,3,4,5'
select @sqlstr=''
select @sqlstr=@sqlstr+'select * from admin where id in('+@str1+')'
exec (@sqlstr)
create table t(id varchar(02))
insert into t select 'aa'
insert into t select 'bb'
insert into t select 'cc'
insert into t select 'dd'declare @s varchar(100)
set @s='aa,bb,cc,dd'set @s=replace(@s,',',''',''')
exec('select * from t where id in (''' +@s+''')')drop table t
SELECT * FROM admin WHERE ',1,2,3,4,5,' LIKE '%,'+RTRIM(id) + ',%'