版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、第第5 5節(jié)節(jié)分分 組組 函函 數(shù)數(shù)講師:宋紅康講師:宋紅康 新浪微博:尚硅谷新浪微博:尚硅谷- -宋紅康宋紅康目目 標(biāo)標(biāo)通過本章學(xué)習(xí),您將可以: 了解組函數(shù)。 描述組函數(shù)的用途。 使用GROUP BY 子句對數(shù)據(jù)分組。 使用HAVING 子句過濾分組結(jié)果集。什么是分組函數(shù)什么是分組函數(shù)分組函數(shù)作用于一組數(shù)據(jù),并對一組數(shù)據(jù)返回一個值。EMPLOYEES表表 EMPLOYEES 中的工資最大值中的工資最大值組函數(shù)類型組函數(shù)類型 AVG COUNT MAX MIN STDDEV SUM張三:10李四:3SELECTcolumn, group_function(column), .FROMtable
2、WHEREconditionGROUP BYcolumnORDER BYcolumn;組函數(shù)語法組函數(shù)語法SELECT AVG(salary), MAX(salary), MIN(salary), SUM(salary)FROM employeesWHERE job_id LIKE %REP%;AVG(平均值)和平均值)和 SUM (合計)函數(shù)合計)函數(shù)可以對數(shù)值型數(shù)據(jù)數(shù)值型數(shù)據(jù)使用AVG 和 SUM 函數(shù)。MIN(最小值)和最小值)和 MAX(最大值)函數(shù)最大值)函數(shù)可以對任意數(shù)據(jù)類型任意數(shù)據(jù)類型的數(shù)據(jù)使用 MIN 和 MAX 函數(shù)。SELECT MIN(hire_date), MAX(hi
3、re_date)FROM employees;SELECT COUNT(*)FROM employeesWHERE department_id = 50;COUNT(計數(shù))函數(shù)計數(shù))函數(shù)COUNT(*) 返回表中記錄總數(shù),適用于任意數(shù)據(jù)類型任意數(shù)據(jù)類型。COUNT(計數(shù))函數(shù)計數(shù))函數(shù)COUNT(expr) 返回expr不為空不為空的記錄總數(shù)。SELECT COUNT(commission_pct)FROM employeesWHERE department_id = 50;SELECT AVG(commission_pct)FROM employees;組函數(shù)與空值組函數(shù)與空值組函數(shù)忽略空值
4、忽略空值。例如:Select avg(commission_pct),sum(commission_pct)/107,sum(commission_pct)/count(commission_pct)From employees;查看結(jié)果的不同。SELECT AVG(NVL(commission_pct, 0)FROM employees;在組函數(shù)中使用在組函數(shù)中使用NVL函數(shù)函數(shù)NVL函數(shù)使分組函數(shù)無法忽略空值函數(shù)使分組函數(shù)無法忽略空值。SELECT COUNT(DISTINCT department_id)FROM employees;DISTINCT 關(guān)鍵字關(guān)鍵字COUNT(DISTIN
5、CT expr)返回expr非空且不重復(fù)非空且不重復(fù)的記錄總數(shù)分組數(shù)據(jù)分組數(shù)據(jù) EMPLOYEES求出求出EMPLOYEES表中各表中各部門的部門的平均工資平均工資440095003500640010033SELECTcolumn, group_function(column)FROMtableWHEREconditionGROUP BYgroup_by_expressionORDER BYcolumn;分組數(shù)據(jù)分組數(shù)據(jù): GROUP BY 子句語法子句語法可以使用可以使用GROUP BY子句將表中的數(shù)據(jù)分成若干組子句將表中的數(shù)據(jù)分成若干組明確:明確:WHERE一定放在一定放在FROM后面后面
6、SELECT department_id, AVG(salary)FROM employeesGROUP BY department_id ;GROUP BY 子句子句 在在SELECT 列表中所有未包含在組函數(shù)中的列都應(yīng)該包含列表中所有未包含在組函數(shù)中的列都應(yīng)該包含在在 GROUP BY 子句中。子句中。GROUP BY 子句子句 包含在 GROUP BY 子句中的列不必包含在SELECT 列表中SELECT AVG(salary)FROM employeesGROUP BY department_id ;使用多個列分組使用多個列分組EMPLOYEES使用多個列使用多個列進行分組進行分組SE
7、LECT department_id dept_id, job_id, SUM(salary)FROM employeesGROUP BY department_id, job_id ;在在GROUP BY子句中包含多個列子句中包含多個列非法使用組函數(shù)非法使用組函數(shù)所有包含于SELECT 列表中,而未包含于組函數(shù)中的列都必須包含于 GROUP BY 子句中。SELECT department_id, COUNT(last_name)FROM employees;SELECT department_id, COUNT(last_name) *ERROR at line 1:ORA-00937:
8、not a single-group group functionGROUP BY 子句中缺少列非法使用組函數(shù)非法使用組函數(shù) 不能在不能在 WHERE 子句中使用組函數(shù)。子句中使用組函數(shù)。 可以在可以在 HAVING 子句中使用組函數(shù)。子句中使用組函數(shù)。SELECT department_id, AVG(salary)FROM employeesWHERE AVG(salary) 8000GROUP BY department_id;WHERE AVG(salary) 8000 *ERROR at line 3:ORA-00934: group function is not allowed
9、hereWHERE 子句中不能使用組函數(shù)子句中不能使用組函數(shù)過濾分組過濾分組EMPLOYEES部門最高工資部門最高工資比比 10000 高的高的部門部門SELECTcolumn, group_functionFROMtableWHEREconditionGROUP BYgroup_by_expressionHAVINGgroup_conditionORDER BYcolumn;過濾分組:過濾分組: HAVING 子句子句使用 HAVING 過濾分組:1. 行已經(jīng)被分組。2. 使用了組函數(shù)。3. 滿足HAVING 子句中條件的分組將被顯示。HAVING 子句子句SELECT department_id, MAX(salary)FROM employeesGROUP BY department_idHAVING MAX(salary)10000 ;嵌套組函數(shù)嵌套組函數(shù)顯示各部門平均工資的最大值SELECT MAX(AVG(salary)FROM employeesGROUP BY department_id;SELECTcolumn, group_function(column)FROMtableWHEREconditionGROUP BYgroup_by_expressionHAVINGgroup_
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度農(nóng)田水利EPC施工合同
- 2024年度體育賽事贊助與媒體轉(zhuǎn)播合同
- 金色魚鉤課件教學(xué)課件
- 2024年度定制家具制作與銷售合同
- 2024年國際貨物買賣與運輸服務(wù)合同
- 2024年度版權(quán)衍生品開發(fā)合同
- 2024年度商用門安裝合同樣本
- 2024年度設(shè)備租賃服務(wù)合同
- 2024江蘇省建設(shè)工程造價咨詢?nèi)^程合同模板
- 2024年度學(xué)校實驗室燈具更換勞務(wù)外包合同
- 第15課 兩次鴉片戰(zhàn)爭 教學(xué)設(shè)計 高中歷史統(tǒng)編版(2019)必修中外歷史綱要上冊+
- 銀行客戶經(jīng)理招聘面試題與參考回答(某大型集團公司)
- 2024-2025學(xué)年度第一學(xué)期七年級語文課內(nèi)閱讀練習(xí)含答案
- 福建省2025屆普通高中學(xué)業(yè)水平合格考試仿真模擬政治試題(一)
- 幼兒園三年發(fā)展規(guī)劃(2024年-2026年)
- 2024-2030年中國重癥監(jiān)護監(jiān)護系統(tǒng)行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略分析報告
- 2024年艾滋病知識題庫
- 2024年安徽龍亢控股集團限公司公開招聘人員13人(高頻重點提升專題訓(xùn)練)共500題附帶答案詳解
- 湖南美術(shù)出版社六年級上冊《書法練習(xí)指導(dǎo)》表格教案
- 投標(biāo)項目進度計劃
- 中醫(yī)腦病科缺血性中風(fēng)(腦梗死恢復(fù)期)中醫(yī)診療方案臨床療效分析總結(jié)
評論
0/150
提交評論