declare @s nvarchar(4000)set @s=''Select @s=@s+','+quotename(老师)+'=sum(case when 老师='+quotename(老师,'''')+' then 成绩 else 0 end)'from (select distinct 老师 from tb)texec('select 学生'+@s+' INTO ##A from tb group by 学生' )SELECT * FROM ##A