溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

sql group by的使用

發(fā)布時(shí)間:2020-06-19 10:28:30 來源:網(wǎng)絡(luò) 閱讀:736 作者:我愛小花花 欄目:數(shù)據(jù)庫

group by一般與聚合函數(shù)一起使用 如count,sum,avg等

在select后使用,如:select * from test where (條件) group by (條件)

如果在返回集字段中,這些字段要么就要包含在Group By語句的后面,作為分組的依據(jù);要么就要被包含在聚合函數(shù)中。

對(duì)了就是Group By 后面字段的順序,排在靠近Group By的分組字段的級(jí)別高,然后是依次遞減。如:Group By Column1, Column2, Column3。那么分組級(jí)別從高到低的順序是:Column1 > Column2 > Column3


2Group By Having, Where ,Order by語句的執(zhí)行順序:

最后要說明一下的Group By, Having, Where, Order by幾個(gè)語句的執(zhí)行順序。一個(gè)SQL語句往往會(huì)產(chǎn)生多個(gè)臨時(shí)視圖,那么這些關(guān)鍵字的執(zhí)行順序就非常重要了,因?yàn)槟惚仨毩私膺@個(gè)關(guān)鍵字是在對(duì)應(yīng)視圖形成前的字段進(jìn)行操作還是對(duì)形成的臨時(shí)視圖進(jìn)行操作,這個(gè)問題在使用了別名的視圖尤其重要。以上列舉的關(guān)鍵字是按照如下順序進(jìn)行執(zhí)行的:Where, Group By, Having, Order by。首先where將最原始記錄中不滿足條件的記錄刪除(所以應(yīng)該在where語句中盡量的將不符合條件的記錄篩選掉,這樣可以減少分組的次數(shù)),然后通過Group By關(guān)鍵字后面指定的分組條件將篩選得到的視圖進(jìn)行分組,接著系統(tǒng)根據(jù)Having關(guān)鍵字后面指定的篩選條件,將分組視圖后不滿足條件的記錄篩選掉,然后按照Order By語句對(duì)視圖進(jìn)行排序,這樣最終的結(jié)果就產(chǎn)生了。在這四個(gè)關(guān)鍵字中,只有在Order By語句中才可以使用最終視圖的列名

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI