SQL分組查詢

一.分組查詢
1.使用group by進行分組查詢
在使用group by關鍵字時,在select列表中可以指定的項目是有限制的,select語句中僅許以下幾項:
〉被分組的列
〉爲每個分組返回一個值得表達式,例如用一個列名作爲參數的聚合函數
group by的使用在這隻寫幾個例子吧:
例:
select courseID,avg(score) as 課程平均成績
from score
group by courseID
例:
select studentID as 學員編號,courseID as 內部測試,avg(score) as 內部測試平均成績
from score
group by studentID,courseID
2.使用having子句進行分組篩選
where子句只能對沒有分組統計前的數據行進行篩選,對分組後的條件的篩選必須使用having子句
例:
select studentID as 學員編號,courseID as 內部測試,avg(score) as 內部測試平均成績
from score
group by studentID,courseID
having avg(score)>60

在select語句中,where、group by、having子句和統計函數的執行次序如下:
where子句從數據源中去掉不符合去搜索條件的數據;group by子句蒐集數據行到各個組中,統計函數爲各個組計算統計值;having子句去掉不符合其組搜索條件的各組數據行 。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章