1. 程式人生 > >Group by having 和 聚合函式

Group by having 和 聚合函式

首先介紹一下 Group by,Group by是用來進行分組查詢的。having是用來對Group by 查詢的結果進行篩選的相當於where

那麼什麼情況下用Group by?

在sql語句中有些函式,叫聚合函式:sum,count,avg,min,max,在這些方法使用時要使用Group by。

唔~不明白?沒事,我也不大懂,舉個栗子:

這是個te

現在我做個查詢:查詢男的GZ:

SELECT GZ FROM te WHERE XB='男'

然後再做個查詢:查詢男的GZ總和:

SELECT SUM(GZ) as JE FROM te WHERE XB='男'

然後做個什麼?就做個查詢男女GZ分別的總和:

SELECT XB,SUM(GZ) as JE FROM te GROUP BY XB


還不夠刺激?那麼條件再多點:查詢XM為z的人的GZ總和:

SELECT XM,SUM(GZ) as JE FROM te GROUP BY XM HAVING XM='z'
根據XM,XB進行分組查詢獲得sum(GZ)的值:
SELECT XM,XB,SUM(GZ) FROM te GROUP BY XM,XB

暫時就這麼多吧,當我什麼時候碰到多表的時候再來補充多表的。