java學(xué)習(xí)教程數(shù)據(jù)庫入門以orcl_第1頁
java學(xué)習(xí)教程數(shù)據(jù)庫入門以orcl_第2頁
java學(xué)習(xí)教程數(shù)據(jù)庫入門以orcl_第3頁
java學(xué)習(xí)教程數(shù)據(jù)庫入門以orcl_第4頁
java學(xué)習(xí)教程數(shù)據(jù)庫入門以orcl_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、ORACLE 第五章數(shù)據(jù)高級(jí)查詢回顧SELECT SEX FROM STUDENT ORDER BY AGE WHERE STUNAME=TOM 這條語句是否正確如何查詢當(dāng)天生日的雇員信息如何查詢所有蘇州市用戶的街道名稱本章目標(biāo)掌握聚合函數(shù)的使用掌握分組查詢的使用掌握多表連接的查詢熟練掌握子查詢的使用高級(jí)查詢思考:在學(xué)生成績表中,如果想知道這個(gè)班的總成績應(yīng)該怎么辦?使用聚合查詢解決問題!高級(jí)查詢SUM求和匯總SELECT SUM(列) FROM 表名高級(jí)查詢思考SELECT SUM(SCORE),STUNAME FROM SCORE的結(jié)果是什么?高級(jí)查詢AVG平均值MAX最大值MIN最小值CO

2、UNT行數(shù)高級(jí)查詢思考如果現(xiàn)在不求班級(jí)平均成績,想查每門課的平均成績?cè)趺崔k?使用分組查詢解決!高級(jí)查詢分析:要求每門課的平均成績必須先獲取每門課的總分,也就是需要對(duì)課程進(jìn)行歸類處理,最終將每一類課程的總分求平均值高級(jí)查詢分組查詢查詢每門課的平均分SELECT 列名 FROM 表名 GROUP BY 列SELECT AVG(SCORE) FROM SCORE GROUP BY COURSEID高級(jí)查詢思考如果查詢參加單科累計(jì)考試次數(shù)達(dá)到5次以上的所有科目的平均成績?cè)趺崔k?高級(jí)查詢HAVING條件篩選HAVING和WHERE一樣表示條件的篩選過濾,但是HAVING只能和GROUP結(jié)合使用SELEC

3、T 列名 FROM 表名 GROUP BY 列 HAVING 條件高級(jí)查詢HAVING和WHERE條件的相同點(diǎn)和區(qū)別點(diǎn)都表示條件的過濾HAVING只能寫在GROUP后,WHERE可以出現(xiàn)任何情況先執(zhí)行WHERE再執(zhí)行GROUP BY最后執(zhí)行HAVINGHAVING中可以使用聚合函數(shù),WHERE不能使用高級(jí)查詢思考查詢參加過補(bǔ)考的同學(xué)編號(hào)SELECT 部門編號(hào),COUNT(*)FROM 員工信息表WHERE 工資=2000GROUP BY 部門編號(hào)HAVING COUNT(*)2這條語句表示什么含義?高級(jí)查詢思考:如果希望查詢得到學(xué)生的姓名課程科目和成績?cè)撛趺崔k?高級(jí)查詢分析姓名來自于學(xué)生表,課

4、程來自于課程表,而成績又來自于成績表,所以必須從三張表中獲取各個(gè)數(shù)據(jù)高級(jí)查詢表連接查詢INNER JOIN內(nèi)連接查詢 獲取兩表中共同部分的數(shù)據(jù)LEFT JOIN左連接 獲取左表中的所有數(shù)據(jù)和右表中匹配的數(shù)據(jù)RIGHT JOIN右連接 獲取右表中的所有數(shù)據(jù)和左表中匹配的數(shù)據(jù)高級(jí)查詢內(nèi)連接查詢學(xué)生姓名和對(duì)應(yīng)的成績以下方式等同于內(nèi)連接SELECT STU.STUNAME S.SCORE FROM STUDENT STUINNER JOIN SCORE S ON STU.STUID=S.STUIDSELECT STU.STUNAME S.SCORE FROM STUDENT STU,SCORE S W

5、HERE STU.STUID=S.STUID高級(jí)查詢左連接查詢沒有參加考試的學(xué)員姓名右連接右連接的使用和左連接相同,只是基表不同SELECT STU.STUNAME FROM STUDENT STU LEFT JOIN SOCRE S ON STU.STUID=S.STUIDWHERE S.SCORE IS NULL高級(jí)查詢思考如果想查詢年齡比TOM的年齡大的學(xué)生信息怎么辦?使用子查詢解決!高級(jí)查詢子查詢子查詢即查詢語句中使用嵌套的查詢,在SQL語句中可以將查詢的結(jié)果作為呈現(xiàn)數(shù)據(jù)或者將結(jié)果作為條件再次進(jìn)行條件篩選SELECT 列名 FROM 表名 WHERE 列名=(SELECT 列名 FROM 表名)高級(jí)查詢子查詢的注意點(diǎn):子查詢必須寫在括號(hào)中子查詢必須在操作符的右邊子查詢不能作為ORDER BY 的表達(dá)式高級(jí)查詢標(biāo)量子查詢將子查詢的結(jié)果作為主查詢語句的顯示結(jié)果子查詢的結(jié)果必須返回單個(gè)的值查詢成績表中所有學(xué)生的總分和平

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論