日期:2014-05-17  浏览次数:20386 次

来一个动态行转列····
表里有数据···
   学年      课程
    1        语文
    1        数学
    1        英语



要求横向动态输出 
 语文   数学   英语
动态行转列

------解决方案--------------------
所以说,你自己加一个where条件筛选就行了啊

declare @sql nvarchar(1000)
select @sql=isnull(@sql,'')+',max(case when [course]='''+[course]+''' then [score] else 0 end)['+[course]+']' from (select distinct [course] from tb)t
exec('select [student]'+@sql+' from tb where 学生姓名='张三'  group by [student]')