欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

group by,having,order by的用法詳解

 更新時(shí)間:2013年09月03日 15:43:22   作者:  
如果一個(gè)查詢中使用了分組函數(shù),任何不在分組函數(shù)中的列或表達(dá)式必須要在group by中,下面為大家簡要介紹下group by,having,order by的用法
一,如果一個(gè)查詢中使用了分組函數(shù),任何不在分組函數(shù)中的列或表達(dá)式必須要在group by中,否則出錯(cuò)。
 
第一個(gè)查詢中,deptno沒有出現(xiàn)在group by中,也沒有出現(xiàn)在分組函數(shù)中,因此出錯(cuò)。將deptno改成job就可以了。該條語句的意義為:按工作分組查出每一項(xiàng)工作的平均薪水二,having 子句

oracle 規(guī)定where子句不可以使用分組函數(shù),這時(shí)我們必須使用having子句方可完成功能。

select job,avg(sal) from emp having avg(sal)>1500 group by job;

使用having子句時(shí),oracle系統(tǒng)的處理順序是:

1,首先對(duì)數(shù)據(jù)行進(jìn)行分組。

2,把所得到的分組應(yīng)用到分組函數(shù)中。

3,最好顯示滿足having條件的記錄。

三,分組函數(shù)的嵌套

不多說直接上圖 
 
該語句的執(zhí)行順序是:

1,執(zhí)行where子句,查出job符合條件的記錄。

2,根據(jù)job進(jìn)行分組。

3,根據(jù)分組情況求出各組的平均工資。

4,找出各組中最大和最小的平均工資。

相關(guān)文章

最新評(píng)論