最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

一句Sql把縱向表轉(zhuǎn)為橫向表,并分別分組求平均和總平均值

 更新時(shí)間:2010年06月29日 09:04:19   作者:  
一句Sql把縱向表轉(zhuǎn)為橫向表,并分別分組求平均和總平均值,需要的朋友可以參考下。
效果如圖所示:

測試sql語句如下:
復(fù)制代碼 代碼如下:

declare @tab table(Class varchar(20),Student varchar(20),Course varchar(50),Quantity decimal(7,2));
insert into @tab(Class,Student,Course,Quantity) values('A班','張三','語文',60);
insert into @tab(Class,Student,Course,Quantity) values('A班','張三','數(shù)學(xué)',70);
insert into @tab(Class,Student,Course,Quantity) values('A班','張三','英語',80);
insert into @tab(Class,Student,Course,Quantity) values('A班','李四','語文',30);
insert into @tab(Class,Student,Course,Quantity) values('A班','李四','數(shù)學(xué)',40);
insert into @tab(Class,Student,Course,Quantity) values('A班','李四','英語',50);

insert into @tab(Class,Student,Course,Quantity) values('B班','王五','語文',65);
insert into @tab(Class,Student,Course,Quantity) values('B班','王五','數(shù)學(xué)',75);
insert into @tab(Class,Student,Course,Quantity) values('B班','王五','英語',85);
insert into @tab(Class,Student,Course,Quantity) values('B班','趙六','語文',35);
insert into @tab(Class,Student,Course,Quantity) values('B班','趙六','數(shù)學(xué)',45);
insert into @tab(Class,Student,Course,Quantity) values('B班','趙六','英語',55);



select * from @tab

select
(case when Grouping(Class)=1 then '總平均' when Grouping(Student)=1 then '' else Class end ) as Class
,(case when Grouping(Class)=1 then '' when Grouping(Student)=1 then '平均' else Student end) as Student
,avg(語文) as 語文
,avg(數(shù)學(xué)) as 數(shù)學(xué)
,avg(英語) as 英語
,avg(總分) as 總分
from (
select Class,Student
,(select isnull(sum(Quantity),0) from @tab where Class=t.Class and Student=t.Student and Course='語文') as '語文'
,(select isnull(sum(Quantity),0) from @tab where Class=t.Class and Student=t.Student and Course='數(shù)學(xué)') as '數(shù)學(xué)'
,(select isnull(sum(Quantity),0) from @tab where Class=t.Class and Student=t.Student and Course='英語') as '英語'
,(select isnull(sum(Quantity),0) from @tab where Class=t.Class and Student=t.Student) as '總分'
from @tab as t
group by Class,Student
) as tempTab
group by Class,Student,語文,數(shù)學(xué),英語,總分 with rollup
having Grouping(語文)=1
and Grouping(數(shù)學(xué))=1
and Grouping(英語)=1

相關(guān)文章

最新評(píng)論

衢州市| 奇台县| 华容县| 昔阳县| 桂平市| 凭祥市| 衡山县| 德安县| 丹阳市| 长治县| 都兰县| 桂平市| 南靖县| 射阳县| 交口县| 日喀则市| 邻水| 富宁县| 临武县| 神池县| 墨江| 会泽县| 项城市| 安福县| 马边| 沾益县| 阜城县| 麻栗坡县| 隆昌县| 芮城县| 罗田县| 邢台市| 宜黄县| 金平| 淮安市| 中卫市| 周宁县| 镇雄县| 泗阳县| 田林县| 定边县|