declare @sql varchar(1000)
set @sql=''
select @sql=@sql+',sum(case 产品类型 when '''+rtrim(产品类型) + ''' then 1 else 0 end) as ['+rtrim(产品类型) + ']' from 一个表
group by 产品类型exec ('select 生产厂商'+@sql+' from 一个表 group by 生产厂商')
set @sql=''
select @sql=@sql+',sum(case 产品类型 when '''+rtrim(产品类型) + ''' then 1 else 0 end) as ['+rtrim(产品类型) + ']' from 一个表
group by 产品类型exec ('select 生产厂商'+@sql+' from 一个表 group by 生产厂商')
declare @s varchar(8000)
set @s=''
select @s=@s+',['+产品类型+']=sum(case 产品类型 when '''+产品类型+''' then 1 else 0 end)'
from 表 group by 产品类型
exec('select 生产厂商'+@s+'
from 表
group by 生产厂商')