關系數(shù)據(jù)查詢語言 市賽獲獎_第1頁
關系數(shù)據(jù)查詢語言 市賽獲獎_第2頁
關系數(shù)據(jù)查詢語言 市賽獲獎_第3頁
關系數(shù)據(jù)查詢語言 市賽獲獎_第4頁
關系數(shù)據(jù)查詢語言 市賽獲獎_第5頁
已閱讀5頁,還剩15頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

主講教師:魏巍巍北京信息職業(yè)技術學院數(shù)據(jù)庫技術與應用關系數(shù)據(jù)查詢語言創(chuàng)建采集任務01數(shù)據(jù)查詢語言01目錄CONTENTS數(shù)據(jù)查詢語言01內(nèi)部聯(lián)接可分為:

等值聯(lián)接、非等值聯(lián)接、自然聯(lián)接等值聯(lián)接的聯(lián)接條件中使用“=”非等值聯(lián)接的聯(lián)接條件中使用“>”、“>=”、“<”、“<=”自然聯(lián)接的聯(lián)接條件中使用“=”

和等值聯(lián)接不同的是要去掉重復屬性。數(shù)據(jù)查詢語言例

查詢教師歐陽淑芳所上的所有課堂,要求按照開課年份和開課學期的升序,顯示課堂名稱、開課年份、開課學期。

SELECT課堂.課堂名稱,課堂.開課年份,課堂.開課學期

FROM教師

INNERJOIN

課堂

ON教師.教師編號

=課堂.教師編號

WHERE教師.姓名

='歐陽淑芳'

ORDERBY課堂.開課年份,課堂.開課學期

;數(shù)據(jù)查詢語言[例]查詢王志強老師講授的所有學生的名單,顯示學號、姓名、專業(yè)班級

SELECT學生.學號,學生.姓名,成績,專業(yè)班級

FROM教師

INNERJOIN

課堂

ON教師.教師編號

=課堂.教師編號

INNERJOIN

選課成績

ON課堂.課堂編號

=選課成績.課堂編號

INNERJOIN

學生

ON選課成績.學號

=學生.學號

WHERE教師.姓名

='王志強';數(shù)據(jù)查詢語言例

列出最受歡迎(特指選修人數(shù))的前三門課程,要求按選修人數(shù)的降序排列課程的名稱和選修人數(shù)。

SELECTTOP3課程名稱,選修人數(shù)

FROM課程

INNERJOIN(SELECT課程.課程編號,COUNT(*)AS選修人數(shù)FROM課程

INNERJOIN

課堂

ON課程.課程編號

=課堂.課程編號

INNERJOIN

選課成績

ON課堂.課堂編號

=選課成績.課堂編號GROUPBY課程.課程編號

)ASAON課程.課程編號

=A.課程編號

ORDERBY選修人數(shù)

DESC;數(shù)據(jù)查詢語言例

統(tǒng)計計算機學院每一位教師本學期的教學工作量(指學時數(shù)),要求顯示教師編號和學時數(shù),并按學時數(shù)的降序排列。SELECT教師.教師編號,SUM(課程.學時數(shù))AS學時數(shù)

FROM教師INNERJOIN課堂ON教師.教師編號=課堂.教師編號

INNERJOIN課程ON課堂.課程編號=課程.課程編號

innerjoin學院on教師.學院編號=學院.學院編號

WHERE課堂.開課年份='2017-2018'AND課堂.開課學期='一'and學院名稱='計算機學院'GROUPBY教師.教師編號

ORDERBY學時數(shù)DESC數(shù)據(jù)查詢語言外聯(lián)接外聯(lián)接的聯(lián)接條件是用“=”實現(xiàn)的外聯(lián)接結果集中除了有滿足條件的元組還有不滿足條件的元組。數(shù)據(jù)查詢語言外聯(lián)接分為:左(外)聯(lián)接、右(外)聯(lián)接、全聯(lián)接聯(lián)接規(guī)范為:From表1left/right/fullouterjoin表2on聯(lián)接條件數(shù)據(jù)查詢語言交叉聯(lián)接即沒有條件的聯(lián)接。其結果集為笛卡爾全集。聯(lián)接規(guī)范為:From表1crossjoin表2數(shù)據(jù)查詢語言結果集的歸并處理使用謂詞運算符(Union(集合并)、Except(集合差)、Intersect(集合交))可以將多個結果處理成成一個結果集。數(shù)據(jù)查詢語言語法:<SELECT_Statement>{UNION[ALL]|EXCEPT|INTERSECT}<SELECT_statement>位置:INTO的位置:只能放在第一個select語句中ORDERBY子句的位置:只能放在最后一個select語句中數(shù)據(jù)查詢語言UNION:并運算例

從[學生]表中提取湖北省和其他省的人數(shù)。SELECT'湖北'AS省份,count(*)AS人數(shù)FROM學生

WHERE籍貫

LIKE'湖北%'UNIONSELECT'其他'AS省份,count(*)AS人數(shù)FROM學生WHERE籍貫

NOTLIKE'湖北%';數(shù)據(jù)查詢語言INTERSECT:交運算

查詢土木工程、工程力學兩個專業(yè)的學生在2017-2018學年均選修過的必修課程,要求顯示課程編號、課程名稱,并按課程編號的升序排列,并將查詢結果保存到臨時表Temp3中。

數(shù)據(jù)查詢語言SELECTdistinct課程.課程編號,課程.課程名稱

INTOTemp3FROM課程INNERJOIN

課堂ON課程.課程編號=課堂.課程編號

WHERE課堂.開課年份='2017-2018'AND課程.課程性質(zhì)='必修'AND課堂.班級列表LIKE'%土木工程%'數(shù)據(jù)查詢語言INTERSECTSELECTdistinct課程.課程編號,課程.課程名稱

FROM課程INNERJOIN

課堂ON課程.課程編號=課堂.課程編號

WHERE課堂.開課年份='2017-2018'AND課程.課程性質(zhì)='必修'AND課堂.班級列表LIKE'%工程力學%'ORDERBY課程.課程編號;數(shù)據(jù)查詢語言子查詢子查詢也可稱為嵌套查詢,SQLServer允許在查詢中再嵌套查詢。最外面的查詢?yōu)楦覆樵?,里面的查詢?yōu)樽硬樵?,父查詢是要做的主要工作,子查詢是為父查詢提供條件或數(shù)據(jù)源等工作的。嵌套查詢一般的查詢方法是由里向外進行處理,即每個子查詢在上一級查詢處理之前處理,子查詢中所存取的表可以是父查詢沒有存取的表,子查詢選出的記錄不顯示。數(shù)據(jù)查詢語言[例]查詢自“數(shù)據(jù)庫技術與應用”課程開設以來獲得最高分的人數(shù)有多少。SELECTCOUNT(*)AS人數(shù)FROM選課成績

INNERJOIN

課堂

ON選課成績.課堂編號

=課堂.

溫馨提示

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

評論

0/150

提交評論