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,找出各組中最大和最小的平均工資。

第一個(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)文章
講解Oracle數(shù)據(jù)庫中的數(shù)據(jù)字典及相關(guān)SQL查詢用法
這篇文章主要介紹了Oracle數(shù)據(jù)庫中的數(shù)據(jù)字典及相關(guān)SQL查詢用法,是Oracle入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2016-03-03Oracle 11g數(shù)據(jù)庫詳細(xì)安裝圖文教程
這篇文章主要為大家詳細(xì)介紹了Oracle 11g數(shù)據(jù)庫詳細(xì)安裝圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-02-02詳解oracle中通過觸發(fā)器記錄每個(gè)語句影響總行數(shù)
這篇文章主要介紹了詳解oracle中通過觸發(fā)器記錄每個(gè)語句影響總行數(shù)的相關(guān)資料,需要的朋友可以參考下2017-06-06Windows系統(tǒng)下Oracle數(shù)據(jù)庫每天自動(dòng)備份
linux和unix下面使用shell可以很方便實(shí)現(xiàn),如果windows環(huán)境下可以結(jié)合計(jì)劃任務(wù)實(shí)現(xiàn)自動(dòng)備份,下面通過本文給大家介紹實(shí)現(xiàn)方法,需要的朋友參考下吧2016-12-12oracle求同比,環(huán)比函數(shù)(LAG與LEAD)的詳解
本篇文章是對(duì)oracle求同比,環(huán)比函數(shù)(LAG與LEAD)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05oracle中的ID號(hào)實(shí)現(xiàn)自增長的方法
這篇文章主要介紹了oracle中的ID號(hào)如何實(shí)現(xiàn)自增長,利用序列產(chǎn)生主鍵值,需要的朋友可以參考下2014-05-05