sql中如果要分組查詢,一般都會使用到group by語句,如何熟練使用group by語句呢,我分以下幾點進行總結(jié)。
group by一般與聚合函數(shù)一起使用。這是因為group by之后結(jié)果集就變成了多個分組,而每個分組可能包含多條記錄,要想針對每個分組進行操作,所以必須使用可以作用在多條記錄上的聚合函數(shù)。比如,下面的示例就使用了group by和聚合函數(shù)查詢每個PNR的總記錄數(shù),sql語句如下。
1 -- 1,Group by與聚合函數(shù)2 -- 查詢每個PNR的總記錄數(shù)3 SELECT NewPNR,COUNT(*) FROM dbo.Remotesession4 GROUP BY NewPNR;
如果要對分組進行篩選呢?要怎么實現(xiàn),請繼續(xù)往下看。
Group by與Having要對分組后的結(jié)果進行篩選,一般使用having語句來實現(xiàn)。請看下面示例,代碼如下。
1 -- 2,Group by與Having2 -- 查詢總記錄數(shù)>1(或者說有重復(fù)的)的PNR3 SELECT NewPNR,COUNT(*) FROM dbo.RemoteSession4 GROUP BY NewPNR5 HAVING COUNT(*)>1;需要注意的地方
關(guān)于group by的使用,有幾個特別需要關(guān)注的地方。
參考資料
新聞熱點
疑難解答
圖片精選