declare @class varchar(20) declare @sql varchar(100) set @class='1,2' set @sql='select serverclassid from ordertb where charindex(cast(serverclassid as varchar(20)),'''+@class+''' )>0' exec(@sql)
create table #tc ([name] varchar(8), chinese float, math float) insert #tc select 'a', 80, 90 union all select '1', 85, 88 union all select '2', 77, 93 union all select '3', 80, 90 union all select '1', 99, 100 declare @class varchar(20) set @class=''''+REPLACE( '1,2',',',''',''')+'''' print @class select * from #tc where charindex([name],@class)>0 drop table #tc
如果@class=0 serverclassid in(1,2,3,4,5,6,7....)
如果@class=1 serverclassid(1)
或@class=2 serverclassid(2)
declare @sql varchar(100)
set @class='1,2'
set @sql='select serverclassid from ordertb where charindex(cast(serverclassid as varchar(20)),'''+@class+''' )>0'
exec(@sql)
insert #tc
select 'a', 80, 90
union all select '1', 85, 88
union all select '2', 77, 93
union all select '3', 80, 90
union all select '1', 99, 100
declare @class varchar(20)
set @class=''''+REPLACE( '1,2',',',''',''')+''''
print @class
select * from #tc where charindex([name],@class)>0
drop table #tc