--下面这样就可以了 --经过测试,没问题declare @str nvarchar(50) declare @sqlstr varchar(200) set @str= '1,2' set @sqlstr='select * from dbo.student where id in('+@str+')' exec (@sqlstr)
--比较,就知道了 我的测试数据 select * from student where id in('1,2') select * from student where id in(1,2)
--经过测试,没问题declare @str nvarchar(50)
declare @sqlstr varchar(200)
set @str= '1,2'
set @sqlstr='select * from dbo.student where id in('+@str+')'
exec (@sqlstr)
select * from student where id in('1,2')
select * from student where id in(1,2)
如果楼主一定要用你的现在的方法,就在(@str)这加一个类型转换,convert(int,(@str))转成整型就可以查询了