select case when substring(@s,a.id,1)=',' then 1 else 0 end
from (select 1 as id union all
select 2 as id union all
select 3 as id union all
...
select 100 as id ) a
where a.id<=len(@s)
from (select 1 as id union all
select 2 as id union all
select 3 as id union all
...
select 100 as id ) a
where a.id<=len(@s)
from (select 1 as id union all
select 2 as id union all
select 3 as id union all
...
select 100 as id ) a
where a.id<=len(@s)
set @v='1,2,3,4,5,6,7,8,9,10'
select len(@v)-len(replace(@v,',','')结果
-----------
9(1 row(s) affected)