SQL GROUP BY

當SELECT 後 既有 表結構本身的字段,又有需要使用聚合函數(COUNT(),SUM(),MAX(),MIN(),AVG()等)的字段,就要用到group by分組,查詢的限定條件裏有需要用聚合函數計算的字段時也需要用分組,比如:
select avg(grade) from cs
查詢選課表(cs)中學生的總成績(grade);這裏就不用分組;
又如:
select sno,sum(grade) from cs group by sno
查詢選課表裏每個學生的總成績,這裏就要用分組,分組的依照字段必須是select 後沒有被計算過的原始字段;
以上是分組用法。


分組的概念:就是讓經過計算的查詢結果根據某一個或者多個字段分成一組一組(一行一行)的排列顯示。

另外順便介紹下,WHERE和HAVING的區別,WHERE作用於全表,而HAVING只作用於分組的組內。


(百度時,某位大神說的。)

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