group by,order by, having的使用

1. group by

group by按照查詢結(jié)果集中的某一列(或多列),進(jìn)行分組,值相等的為一組。
比如原始表

table1.png

select 類別, sum(數(shù)量) as 數(shù)量之和
from A
group by 類別
返回結(jié)果:
table2.png

2.order by

使用order by,一般是用來,依照查詢結(jié)果的某一列(或多列)屬性,進(jìn)行排序(升序:ASC;降序:DESC;默認(rèn)為升序)。

select 類別, sum(數(shù)量) AS 數(shù)量之和
from A
group by 類別
order by sum(數(shù)量) desc


table3.png

3. group by all

select 類別, 摘要, sum(數(shù)量) as 數(shù)量之和
from A
group by all 類別, 摘要

結(jié)果的表中就會出現(xiàn)三列

4.having 和 where 的區(qū)別

Where是一個約束聲明,在查詢數(shù)據(jù)庫的結(jié)果返回之前對數(shù)據(jù)庫中的查詢條件進(jìn)行約束,即在結(jié)果返回之前起作用,且where后面不能使用聚合函數(shù)。

Having是一個過濾聲明,所謂過濾是在查詢數(shù)據(jù)庫的結(jié)果返回之后進(jìn)行過濾,即在結(jié)果返回之后起作用,并且having后面可以使用聚合函數(shù)。

所謂聚合函數(shù),是對一組值進(jìn)行計算并且返回單一值的函數(shù):sum---求和,count---計數(shù),max---最大值,avg---平均值等。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容