1. 程式人生 > >SQL行列轉置

SQL行列轉置

--函式
alter function zh()
returns table
as
return(
   select 科目,max(張三) as 張三,max(李四)as 李四
    from(
         select '語文'as 科目,張三,李四
         from stu2
         pivot(max(語文)for 姓名 in (科目,張三,李四))as a 
         union all
         select '數學'as 科目,張三,李四
         from stu2
         pivot(max(數學)for
姓名 in (科目,張三,李四))as a )as n group by 科目 go select * from zh() --儲存過程 alter procedure zh1 as select 科目,max(張三) as 張三,max(李四)as 李四 from( select '語文'as 科目,張三,李四 from stu2 pivot(max(語文)for 姓名 in (科目,張三,李四))as a union all select '數學'as 科目,張三,李四
from stu2 pivot(max(數學)for 姓名 in (科目,張三,李四))as a )as n group by 科目 go exec zh1