版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第3節(jié)SQL的數(shù)據(jù)查詢第5章關(guān)系數(shù)據(jù)庫語言SQL主要內(nèi)容簡(jiǎn)單查詢常用函數(shù)及其使用方式SQL高級(jí)查詢技術(shù)謂詞演算查詢2數(shù)據(jù)查詢SELECT命令的格式與基本使用
SELECT[ALL|DISTINCT][TOPN[PERCENT][WITHTIES]] 〈列名〉[AS別名1][{,〈列名〉[AS別名2]}] [INTO新表名]
FROM〈表名1或視圖名1〉[[AS]表1別名][{,〈表名2或視圖名2〉[[AS]表2別名]}] [WHERE〈檢索條件〉] [GROUPBY<列名1>[HAVING<條件表達(dá)式>]] [ORDERBY<列名2>[ASC|DESC]]投影選取3一、簡(jiǎn)單查詢1、SELECT和FROM子句
SELECT<列名表>FROM<表名表>[WHERE<條件>]
作用
SELECT:π,用來列出查詢結(jié)果中的屬性
FROM:×,用來列出需掃描的關(guān)系WHERE:σ,指定選擇記錄的條件42、無條件查詢例3.16查詢教學(xué)管理數(shù)據(jù)庫中全部學(xué)生的基本信息。
SELECT*FROMS;52、無條件查詢(續(xù))例3.17查詢教學(xué)管理數(shù)據(jù)庫中全部教師的教職工編號(hào)、姓名、職稱和所屬教研室。
SELECTT#,TNAME,TITLEOF,TRSECTIONFROMT;62、無條件查詢聚合函數(shù)
聚合函數(shù)能夠根據(jù)查詢結(jié)果的記錄集或根據(jù)查詢結(jié)果的記錄集中某列值的特點(diǎn)返回一個(gè)匯總信息的函數(shù)。
輸入——值的一個(gè)集合
返回——單個(gè)值78聚合函數(shù)
COUNT(*)
計(jì)算元組的個(gè)數(shù)
COUNT(列名)
計(jì)算某一列中數(shù)據(jù)的個(gè)數(shù)
COUNTDISTINCT(列名)計(jì)算某一列中不同值的個(gè)數(shù)
SUM(列名)計(jì)算某一數(shù)據(jù)列中值的總和
AVG(列名)計(jì)算某一數(shù)據(jù)列中值的平均值
MIN(列名)求(字符、日期、數(shù)值列)的最小值
MAX(列名)求(字符、日期、數(shù)值列)的最大值2、無條件查詢聚合函數(shù)(續(xù))9例3.18查詢開課總門數(shù)
SELECTCOUNT(*)FROMC;例3.19計(jì)算所有學(xué)生所學(xué)課程的最高分?jǐn)?shù)、最低分?jǐn)?shù)和平均分?jǐn)?shù)。SELECTMAX(GRADE),MIN(GRADE),AVG(GRADE)FROMSC;2、無條件查詢聚合函數(shù)(例)103、單條件查詢例3.20查詢所有學(xué)習(xí)了計(jì)算機(jī)網(wǎng)絡(luò)課(課程號(hào)為C403001)的學(xué)生的學(xué)號(hào)和成績SELECTS#,GRADEFROMSCWHEREC#=‘C403001’;114、多條件查查詢例3.21查詢選修了了計(jì)算機(jī)網(wǎng)網(wǎng)絡(luò)課(課課程號(hào)為C403001)或信息安安全技術(shù)課課(課程號(hào)號(hào)為C403002)的學(xué)生的的學(xué)號(hào)SELECTS#FROMSCWHEREC#=‘C403001’ORC#=‘C403002’;125、分組查詢?cè)僑ELECT<列名表>FROM<表名表>[WHERE<條件>][GROUPBY<列名表>]作用:對(duì)滿足WHERE條件的元組組集按照指指定的列的的值進(jìn)行分分組,該屬屬性列值相相等的元組組為一組13例例3.23計(jì)算各個(gè)同同學(xué)的平均均分?jǐn)?shù)。SELECTS#,AVG(GRADE)FROMSCGROUPBYS#;SELECT<列名表>FROM<表名表>[WHERE<條件>][GROUPBY<列名表>[HAVING<分組條件>]]作用:指定GROUPBY子句形成的的分組所應(yīng)應(yīng)滿足的條條件5、分組查詢?cè)儯ɡm(xù))1415例例3.25查詢學(xué)生總總數(shù)超過300人的專業(yè)及及其具體的的總?cè)藬?shù)SELECTSCODE,COUNT(*)FROMSGROUPBYSCODEHAVINGCOUNT(*)>300;166、結(jié)果的排排序ORDERBY<列名>[ASC/DESC][,<列名>[ASC/DESC]]…;作用:依據(jù)給定列列的值,控控制查詢結(jié)結(jié)果中元組組的排列順順序。176、結(jié)果的排排序(例))例3.27按學(xué)號(hào)遞增增、課程成成績遞減的的顯示順序序顯示學(xué)生生的課程成成績SELECTS#,C#,GRADEFROMSCORDERBYS#ASC,GRADEDESC;187、字符串的的匹配下劃線通配配符_:代表任意意一個(gè)字符符百分號(hào)通配配符%:代表任意意長度的字字符串例3.28查詢S中姓李的學(xué)學(xué)生的學(xué)號(hào)號(hào)和姓名SELECTS#,SNAMEFROMSWHERESNAMELIKE‘李%’;19簡(jiǎn)單查詢語語句SELECT<列名或列表表達(dá)式序列列>FROM<表名表>[WHERE<條件>][GROUPBY<列名表>[HAVING<分組條件>]][ORDERBY<列名>[ASC/DESC][,<列名>[ASC/DESC]]…];讀取FROM子句指定的的基本表或或視圖的數(shù)據(jù),執(zhí)執(zhí)行笛卡爾爾積操作選取滿足WHERE子句中給出出的條件表表達(dá)式的元元組按GROUPBY子句中指定定列的值進(jìn)進(jìn)行分組,,同時(shí)提取取滿足HAVING子句中組條條件表達(dá)式式的那些組組按SELECT子句中給出出的列名或或列表達(dá)式式求值輸出出ORDERBY子句對(duì)輸出出的結(jié)果((目標(biāo)表))進(jìn)行排序序,按指定定列的值升升序或降序序排列20二、SQL高級(jí)查詢技技術(shù)1、多表聯(lián)接接查詢例3.32查詢所有學(xué)學(xué)習(xí)了數(shù)據(jù)據(jù)結(jié)構(gòu)課((課程號(hào)為為C401001)的學(xué)生的的學(xué)號(hào)和姓姓名SELECTS.S#,SNAMEFROMS,SCWHERES.S#=SC.S#ANDC#=‘C401001’;212、嵌套查詢?cè)冊(cè)赟QL語言中,如如果在一個(gè)個(gè)SELECT語句的WHERE子句中嵌入入了另一個(gè)個(gè)SELECT語句,則稱稱這種查詢?cè)優(yōu)榍短撞椴樵?。WHERE子句中的SELECT語句稱為子查詢,外部的查查詢稱為父查詢。22SELECT*FROMSWHERECLASS=()ANDSSEX=‘女’;2、嵌套查詢?cè)兝纠樵儚埲A同同學(xué)(學(xué)號(hào)號(hào)為200401001)的的那個(gè)班的的女同學(xué)的的基本信息息。SELECTCLASSFROMSWHERES#=‘200401001’233、查詢中的的表更名3、查詢中的的表更名舊名AS新名例3.35檢索成績比比該課程平平均成績低低的學(xué)生成成績表。SELECTS#,C#,GRADEFROMSCWHEREGRADE<(SELECTAVG(GRADE)FROMSCASXWHEREX.C#=SC.C#);24三、謂詞演演算查詢所謂基于謂謂詞演算的的查詢是指指把謂詞看看作是特殊殊比較操作作符、應(yīng)用用于WHERE子句句的條件表表達(dá)式中的的查詢。操作符說明betweenAandBnotbetweenAandBlikeinnotinanysomeallexistsnotexists
某列的數(shù)值區(qū)間是[A,B]某列的數(shù)值區(qū)間在[A,B]外兩個(gè)字符串的部分字符相等,其余可以任意某列的某個(gè)值屬于集合成員中的一個(gè)成員某列的值不屬于集合成員中的任何一個(gè)成員某列的值滿足一個(gè)條件即可滿足集合中的某些值某列的值滿足子查詢中所有值的記錄總存在一個(gè)值滿足條件不存在任何值滿足條件25格式:<集集合1>IN<集合2><集合1>NOTIN<集合2>含義:1、IN和NOTIN如果集合1中的數(shù)據(jù)是是集合2中的成員,,那么其邏邏輯值為true,否則為false.26例3.36查詢所有學(xué)學(xué)習(xí)了數(shù)據(jù)據(jù)結(jié)構(gòu)課((課程號(hào)為為C401001)的學(xué)生的的學(xué)號(hào)和姓姓名。SELECTS.S#,SNAMEFROMSWHERES#IN(SELECTS#FROMSCWHEREC#=‘C401001’);1、IN和NOTIN例27格式:<列數(shù)據(jù)>θANY<集合><列數(shù)據(jù)>θSOME<集合>含義:2、ANY和SOME如果比較運(yùn)運(yùn)算符θ左邊的數(shù)據(jù)據(jù)與右邊集集合中至少一個(gè)元素滿足θ運(yùn)算,那么么其邏輯值值為true,否則為false.28例3.38查詢所有學(xué)學(xué)習(xí)了數(shù)據(jù)據(jù)結(jié)構(gòu)課((課程號(hào)為為C401001)的學(xué)生的的學(xué)號(hào)和姓姓名。解法3SELECTS.S#,SNAMEFROMSWHERES#=ANY(SELECTS#FROMSCWHEREC#=‘C401001’);2、ANY和SOME例29格式:<列數(shù)據(jù)>θALL<集合>含義:3、ALL如果比較運(yùn)運(yùn)算符θ左邊的數(shù)據(jù)據(jù)與右邊集集合中所有有元素滿足足θ運(yùn)算,那么么其邏輯值值為true,否則為false.303、ALL例例3.39查查詢考考試成績大大于計(jì)算機(jī)科學(xué)學(xué)專業(yè)(專業(yè)代碼碼S0401)所有有學(xué)生課程程成績的學(xué)學(xué)生的基本本信息SELECTS.*FROMS,SCWHERES.S#=SC.S#ANDGRADE>ALL(SELECTGRADEFROMS,SCWHERES.S#=SC.S#ANDSCODE=’S0401’);31格式:EXISTS(<集合>)NOTEXISTS(<集合>)含義:4、EXISTS和NOTEXISTSEXISTS是存在量詞詞,當(dāng)集合合中至少存在一一個(gè)元素(非空空)時(shí),其其邏輯值為為true,否則為false。NOTEXISTS是空集判斷斷,當(dāng)集合合中不存在任何何元素(為空)時(shí)時(shí),其邏輯輯值為true,否則為false。32例3.40查詢所有學(xué)學(xué)習(xí)了數(shù)據(jù)據(jù)結(jié)構(gòu)課((課程號(hào)為為C401001)的學(xué)生的的學(xué)號(hào)和姓姓名。SELECTS.S#,SNAMEFROMSWHEREEXISTS(SELECT*FROMSCWHERESC.S#=S.S#ANDC#=‘C401001’);4、EXISTS和NOTEXISTS例33SELECTC#,AVG(GRADE)FROMSC,TEACH,TWHERESC.C#=TEACH.C#ANDTEACH.T#=T.T#ANDTNAMELike’張%’GROUPBYC#ORDERBY2DESC;例::求張張老老師師所所授授課課程程的的每每門門課課程程的的學(xué)學(xué)生生平平均均成成績績,,并并按按平平均均成成績績降降序序輸輸出出。。第4節(jié)SQL的視視圖圖操操作作第5章關(guān)關(guān)系系數(shù)數(shù)據(jù)據(jù)庫庫語語言言SQL主要要內(nèi)內(nèi)容容視圖圖的的概概念念視圖圖的的定定義義在視視圖圖上上進(jìn)進(jìn)行行查查詢?cè)儾俨僮髯饔脩魬粢曇晥D圖對(duì)對(duì)數(shù)數(shù)據(jù)據(jù)庫庫系系統(tǒng)統(tǒng)設(shè)設(shè)計(jì)計(jì)和和性性能能帶帶來來的的影影響響35一、、視視圖圖的的概概念念視圖圖是是從從一一個(gè)個(gè)或或幾幾個(gè)個(gè)基基本本表表((或或視視圖圖))通通過過視視圖圖定定義義語語句句所所描描述述的的映映射射關(guān)關(guān)系系導(dǎo)導(dǎo)出出的的表表。。數(shù)據(jù)據(jù)庫庫中中,,只只有有視視圖圖的的定定義義,,沒沒有有視視圖圖的的數(shù)數(shù)據(jù)據(jù)。。這這些些數(shù)數(shù)據(jù)據(jù)還還在在基基本本表表中中。。因因此此,,視視圖圖是是一一種種“虛表表”。36S#SNAMEC#GRADES#SNAMEAGESEXS256…Wang21FS#C#GRADES256…C580CGSSCS256WangC580查詢?cè)冋Z句句學(xué)生生成成績績視視圖圖CG(S#,SNAME,C#,GRADE)37CREATEVIEW<視圖圖名名>[(<視圖圖列列名名表表>)]AS<SELECT語句句>[WITHREADONLY|WITHCHECKOPTION];新定定義義的的視視圖圖的的各各個(gè)個(gè)列列的的名名稱稱一一對(duì)應(yīng)視圖圖被被定定義義成成一一個(gè)個(gè)只只讀讀視視圖圖,,不不能能進(jìn)進(jìn)行行插插入入、、刪刪除除和和修修改改操操作作表示示用用戶戶必必須須保保證證每每當(dāng)當(dāng)向向該該視視圖圖插插入入或或更更新新數(shù)數(shù)據(jù)據(jù)時(shí)時(shí),,所所插插入入或或更更新新的的數(shù)數(shù)據(jù)據(jù)能能從從該該視視圖圖查查詢?cè)兂龀鰜韥?。。二、、視視圖圖的的定定義義38例3.45定義義平平均均成成績績視視圖圖((S#,AVG_GRADE)CREATEVIEWA_GRADE(S#,AVG_GRADE)ASSELECTS#,AVG(GRADE)FROMSCWHEREGRADEISNOTNULLGROUPBYS#;查詢?cè)兘Y(jié)結(jié)果果中中有有表表達(dá)達(dá)式式或或聚聚合合函函數(shù)數(shù),,必必須須重重新新命命名名二、、視視圖圖的的定定義義例例39三、、在視視圖圖上上進(jìn)進(jìn)行行查查詢?cè)儾俨僮髯鲾?shù)據(jù)據(jù)查查詢?cè)円晥D圖的的查查詢?cè)兎椒椒ǚê秃突颈颈肀硪灰粯訕樱?,但但有有了了視視圖圖后后,,查查詢?cè)冋Z語句句變變得得非非常常簡(jiǎn)簡(jiǎn)單單。。SELECT*FROMA_GRADE;40四、用戶戶視圖對(duì)對(duì)數(shù)據(jù)庫庫系統(tǒng)設(shè)設(shè)計(jì)和性性能帶來來的影響響1、視圖能能夠簡(jiǎn)化化用戶的的操作2、視圖使使用戶能能以多種種角度看看待同一一數(shù)據(jù)3、視圖對(duì)對(duì)重構(gòu)數(shù)數(shù)據(jù)庫提提供了一一定程度度的邏輯輯獨(dú)立性性4、視圖能能夠?qū)C(jī)機(jī)密數(shù)據(jù)據(jù)提供安安全保護(hù)護(hù)41第5節(jié)SQL中帶有子子查詢的的數(shù)據(jù)更更新操作作第5章關(guān)關(guān)系數(shù)據(jù)據(jù)庫語言言SQL主要內(nèi)容容帶有子查查詢的數(shù)數(shù)據(jù)插入入操作帶有子查查詢條件件的數(shù)據(jù)據(jù)更新操操作43復(fù)習(xí)數(shù)數(shù)據(jù)插入入1、數(shù)據(jù)插插入向表中插插入一行行(單元元組)數(shù)數(shù)據(jù)。INSERTINTO<表名>[(<列名表>)]VALUES(<值表>);44一、帶有有子查詢?cè)兊臄?shù)據(jù)據(jù)插入操操作向表中插插入一個(gè)個(gè)子查詢?cè)兊玫降牡臄?shù)據(jù)。。INSERTINTO<表名>[(<列名表>)]<子查詢>;子查詢是是一個(gè)合合法的SELECT查詢語句句。45例1設(shè)在教學(xué)學(xué)管理數(shù)數(shù)據(jù)庫系系統(tǒng)中,,要建立立某些臨臨時(shí)表來來輔助有有關(guān)管理理過程。。若其中中有一個(gè)個(gè)臨時(shí)表表用于暫暫存選修修了“信息安全全技術(shù)”課程的學(xué)學(xué)生的學(xué)學(xué)號(hào)、姓姓名、專專業(yè)名稱稱和班級(jí)級(jí),表的的格式為為:S_C(S#,SNAME,SSNAME,CLASS)則將從有有關(guān)表中中查詢出出的數(shù)據(jù)據(jù)組成的的記錄插
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 招投標(biāo)項(xiàng)目成本控制與優(yōu)化
- 節(jié)能減排廉潔自律招投標(biāo)守則
- 咖啡館租賃合同草稿
- 腹股溝斜疝修補(bǔ)術(shù)后護(hù)理
- 建筑施工勞務(wù)合同:旅游設(shè)施建設(shè)
- 醫(yī)療機(jī)構(gòu)市場(chǎng)營銷與市場(chǎng)定位
- 公路充電設(shè)施維護(hù)合同范本
- 木材加工安全事故預(yù)防
- 屋頂修復(fù)漏水施工合同
- 制造業(yè)用工規(guī)范承諾書
- 茶道文化之功夫茶
- AOSC急性梗阻化膿性膽管炎課件
- 動(dòng)力網(wǎng)站-艾默生netsure801電源系統(tǒng)用戶手冊(cè)
- PCV診斷鑒別及其治療課件
- 第10課《唐雎不辱使命》課件(21張PPT) 部編版語文九年級(jí)下冊(cè)
- 地方課程泰順廊橋課件
- cf戰(zhàn)隊(duì)收人口號(hào)精彩5篇
- 中國傳統(tǒng)文化中的管理智慧
- 裝配式建筑綜合設(shè)計(jì)組任務(wù)書
- 第七單元整體教學(xué)設(shè)計(jì)-高中語文新教材必修上冊(cè)單元備課+群文閱讀-課件
- with復(fù)合結(jié)構(gòu)(公開課)課件
評(píng)論
0/150
提交評(píng)論