我用:select distinct(a.name),(select count(b.sort) from table b where b.sort="1" and b.name=a.name),(select count(b.sort) from table b where b.sort="2" and b.name=a.name),(select count(b.sort) from table b where b.sort="3" and b.name=a.name)from mz_cf a group by name
不行,各位大哥救救我
不行,各位大哥救救我
set @sql='select Name'
select @sql=@sql+',sum(case Sort when '''+Sort+''' then 1 else 0 end) [Sort'+Sort+']'
from (select distinct Sort from tablename) a
select @sql=@sql+' from tablename group by Name'
--print @sql
exec(@sql)
select name,sum(case Sort when 1 then 1 else 0 end) sort1,
sum(case Sort when 2 then 1 else 0 end) sort2,
sum(case Sort when 3 then 1 else 0 end) sort3,
sum(case Sort when 4 then 1 else 0 end) sort4
from tablename group by name