group by在我之前的工作中不一定用到,可惜group by在一般的筆試測試的時(shí)候經(jīng)常用到。所以今天剛開(kāi)一個(gè)博客記錄下group by用法,為避免以后再犯這個(gè)錯誤。
聚合函數
求和函數——SUM()
計數函數——COUNT()
最大/最小值函數—MAX()/MIN()
均值函數——AVG()
—————————————————————————————————————————
GROUP BY 是分組查詢(xún), 一般 GROUP BY 是和 聚合函數配合使用,你可以想想
你用了GROUP BY 按 ITEM.ITEMNUM 這個(gè)字段分組,那其他字段內容不同,變成一對多又改如何顯示呢,比如下面所示
A B
1 abc
1 bcd
1 asdfg
select A,B from table group by A
你說(shuō)這樣查出來(lái)是什么結果,
A B
abc
1 bcd
asdfg
右邊3條如何變成一條,所以需要用到聚合函數,比如
select A,count(B) 數量 from table group by A
這樣的結果就是
A 數量
1 3
——————————————————————————————————————
Store_Information 表格
store_name Sales Date
Los Angeles $1500 Jan-05-1999
San Diego $250 Jan-07-1999
Los Angeles $300 Jan-08-1999
Boston $700 Jan-08-1999
我們就打入
SELECT store_name, SUM(Sales) FROM Store_Information GROUP BY store_name
結果:
store_name SUM(Sales)
Los Angeles $1800
San Diego $250
Boston $700
————————————————————————————————————————
group by 有一個(gè)原則,就是 select 后面的所有列中,沒(méi)有使用聚合函數的列,必須出現在 group by 后面。
聯(lián)系客服