一、相關概念
如果在對資料進行統計分析時,既需要儲存查詢結果,又能在查詢結果下面將統計結果顯示出來,我們可以使用compute by 子句。
Compute子句用於產生合計,並將其作為附加的匯總列出現在結果集的最後,當與by一起使用時,Compute子句在結果集內產生控制項中斷和分類匯總。可在同一查詢內指定Compute by和Compute。
其文法格式如下:
[Compute
{
{Avg | count | max | min | stdev | stdevp| var | varp | sum (expression)}[,…n]
[by expressin [,….]]
}]
Compute子句中使用的彙總函式
注意:彙總函式不能使用欄位別名。
二、執行個體說明
1、準備工作
if object_id('student','table') is not nulldrop table studentgocreate table student(ID int identity(1,1) not null,sex varchar(4) not null,sclass varchar(10),score int ,constraint zhujian primary key(ID),constraint scorecheck check(score>0 and score<=10))insert into student values('男',1,2)insert into student values('女',2,4)insert into student values('女',2,6)insert into student values('女',1,2)insert into student values('男',3,3)insert into student values('男',2,5)
2、group by子句
--group字句select sex,sclass,score,sum(score) as 總分from studentgroup by sex,sclass,scoreorder by sex
結果如下:3、使用compute by子句
--comlpute by字句select sex,sclass,score,sum(score) as 總分from studentgroup by sex,sclass,scoreorder by sexcompute sum(score),avg(score),max(score),min(score) by sex
結果如下:
完工,拜拜。