版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、關(guān)系運(yùn)算與實(shí)例第一頁,共57頁。2一:關(guān)系代數(shù)一:關(guān)系代數(shù)-傳統(tǒng)的集合運(yùn)算傳統(tǒng)的集合運(yùn)算n1、并、并(Union)nRS=t|tRt Sn2、交、交(Intersection)nRS=t |tRt Sn3、差、差(Difference)nR-S=t |tRt S第二頁,共57頁。3一:關(guān)系代數(shù)一:關(guān)系代數(shù)-傳統(tǒng)的集合運(yùn)算傳統(tǒng)的集合運(yùn)算n4、廣義笛卡兒積、廣義笛卡兒積(Extended Cartesian Product)nRS=trts |trRts SABCa1b1c1a1b2c2a2b2c1RABCa1b2c2a1b3c2a2b2c1S第三頁,共57頁。4一:關(guān)系代數(shù)一:關(guān)系代數(shù)-傳統(tǒng)的集
2、合運(yùn)算傳統(tǒng)的集合運(yùn)算n運(yùn)算結(jié)果運(yùn)算結(jié)果ABCa1b1c1a1b2c2a2b2c1a1b3c2RSABCa1b2c2a2b2c1RSABCa1b1c1R-S第四頁,共57頁。5一:關(guān)系代數(shù)一:關(guān)系代數(shù)-傳統(tǒng)的集合運(yùn)算傳統(tǒng)的集合運(yùn)算n運(yùn)算結(jié)果運(yùn)算結(jié)果RSABCABCa1b1C1a1b2C2a1b1C1a1b3C2a1b1C2a2b2C1a1b2C2a1b2C2a1b2C2a1b3C2a1b2C2a2b2C1a2b2C1a1b2C2a2b2C1a1b3C2a2b2C1a2b2C1第五頁,共57頁。6一:關(guān)系代數(shù)一:關(guān)系代數(shù)-專門的關(guān)系運(yùn)算專門的關(guān)系運(yùn)算n專業(yè)標(biāo)記專業(yè)標(biāo)記n1、設(shè)關(guān)系模式為、設(shè)關(guān)系模式
3、為R(A1,A2,An).它的一個(gè)關(guān)系設(shè)為它的一個(gè)關(guān)系設(shè)為R。tR表示表示t是是R的一個(gè)元組。的一個(gè)元組。tAi表示元組表示元組t中相應(yīng)于屬中相應(yīng)于屬性性Ai的一個(gè)分量的一個(gè)分量n2、若、若A=Ai1,Ai2,Aik,其中其中Ai1,Ai2,Aik是是A1,A2,An中的一部分,則中的一部分,則A稱為屬性列或域列。稱為屬性列或域列。tA=(tAi1, tAi2, tAik)表示元組表示元組t在屬性列在屬性列A上上諸分量的集合。諸分量的集合。A則表示則表示A1,A2,An中去掉中去掉Ai1,Ai2,Aik后剩余的屬性組后剩余的屬性組第六頁,共57頁。7一:關(guān)系代數(shù)一:關(guān)系代數(shù)-專門的關(guān)系運(yùn)算專門
4、的關(guān)系運(yùn)算n專業(yè)標(biāo)記專業(yè)標(biāo)記n3、R為為n目關(guān)系。目關(guān)系。S為為m目關(guān)系。目關(guān)系。trR, tsS,trts稱稱為元組的連接為元組的連接(Concatenation).它是一個(gè)它是一個(gè)n+m列的元列的元組,前組,前n個(gè)分量為個(gè)分量為R中的一個(gè)中的一個(gè)n元組,后元組,后m個(gè)分量為個(gè)分量為S中中的一個(gè)的一個(gè)m元組元組n4、給定一個(gè)關(guān)系、給定一個(gè)關(guān)系R(X,Z),X和和Z為屬性組。定義:當(dāng)為屬性組。定義:當(dāng)tX=x時(shí),時(shí),x在在R上的象集上的象集(Image Set)為:為:Zx=tZ|t R,tX=x,它表示,它表示R中屬性組中屬性組X上值為上值為x的諸元組在的諸元組在Z上分量的集合上分量的集合第
5、七頁,共57頁。8一:關(guān)系代數(shù)一:關(guān)系代數(shù)-專門的關(guān)系運(yùn)算專門的關(guān)系運(yùn)算n專門的關(guān)系運(yùn)算專門的關(guān)系運(yùn)算n1、選擇、選擇(Selection)n又稱為限制又稱為限制(Restriction),在關(guān)系在關(guān)系R中選擇滿足給定條件的諸元組,中選擇滿足給定條件的諸元組,記作記作nF(R)=t|t R F(t)=真真n例例1、查詢信息系、查詢信息系(IS系系)全體學(xué)生全體學(xué)生nSdept=IS(Student)n5=IS(Student)n例例2、查詢年齡小于、查詢年齡小于20歲的學(xué)生歲的學(xué)生nSage20(Student)n420(Student)第八頁,共57頁。9一:關(guān)系代數(shù)一:關(guān)系代數(shù)-專門的關(guān)系
6、運(yùn)算專門的關(guān)系運(yùn)算-例例學(xué)號Sno姓名Sname性別Ssex年齡Sage 所在系Sdept95001李勇男20CS95002劉晨女19IS95003王民女18MA95004張力男19ISStudent課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit1數(shù)據(jù)庫542數(shù)學(xué)23信息系統(tǒng)144操作系統(tǒng)635數(shù)據(jù)結(jié)構(gòu)746數(shù)據(jù)處理27PASCAL84Couse學(xué)號Sno課程號Cno成績Grade9500119295001285950013889500229095002380SC第九頁,共57頁。10一:關(guān)系代數(shù)一:關(guān)系代數(shù)-專門的關(guān)系運(yùn)算專門的關(guān)系運(yùn)算-例例學(xué)號Sno姓名Sname性別Ssex
7、年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeStudentCouseSC第十頁,共57頁。11一:關(guān)系代數(shù)一:關(guān)系代數(shù)-專門的關(guān)系運(yùn)算專門的關(guān)系運(yùn)算n專門的關(guān)系運(yùn)算專門的關(guān)系運(yùn)算n2、投影、投影(Projection)n從從R中選擇若干個(gè)屬性列組成新的關(guān)系。記作:中選擇若干個(gè)屬性列組成新的關(guān)系。記作:nA(R)=tA|t R,A是是R中的屬性列中的屬性列n例例3:查詢學(xué)生的姓名和所在的系:查詢學(xué)生的姓名和所在的系nSname,Sdept(Student)n 2,5(Student)n例例4:查詢學(xué)生關(guān)系:查詢學(xué)生關(guān)
8、系Student中有哪些系中有哪些系nSdept(Student)第十一頁,共57頁。12一:關(guān)系代數(shù)一:關(guān)系代數(shù)-專門的關(guān)系運(yùn)算專門的關(guān)系運(yùn)算n專門的關(guān)系運(yùn)算專門的關(guān)系運(yùn)算n3、連接、連接(Join)n又稱又稱連接。從兩個(gè)關(guān)系的笛卡兒積中選取屬性間滿足一定條件連接。從兩個(gè)關(guān)系的笛卡兒積中選取屬性間滿足一定條件的元組。記作;的元組。記作;nR S=trts|tr R ts S trA tsBnA和和B分別為分別為R和和S上度數(shù)相等且可比的屬性組上度數(shù)相等且可比的屬性組. 為比較運(yùn)算為比較運(yùn)算符符n特殊的連接特殊的連接:n等值連接等值連接:R S=trts|tr R ts S trA = tsB
9、n自然連接自然連接:將等值連接中重復(fù)的屬性列去掉將等值連接中重復(fù)的屬性列去掉,記作記作:nR S=trts|tr R ts S trA = tsBABA=B第十二頁,共57頁。13一:關(guān)系代數(shù)一:關(guān)系代數(shù)-專門的關(guān)系運(yùn)算專門的關(guān)系運(yùn)算-連接例題連接例題ABCa1b15a1b26a2b38a2b412RBEb13b27b310b32b52SAR.BCS.BEa1b15b27a1b15b310a1b26b27a1b26b310a2b38b310AR.BCS.BEa1b15b13a1b26b27a2b38b310a2b38b32ABCEa1b153a1b267a2b3810a2b382R SCER
10、SR.B=S.BR S第十三頁,共57頁。14一:關(guān)系代數(shù)一:關(guān)系代數(shù)-專門的關(guān)系運(yùn)算專門的關(guān)系運(yùn)算n專門的關(guān)系運(yùn)算專門的關(guān)系運(yùn)算n4、除、除(Division)nR(X,Y)與與S(Y,Z)的除運(yùn)算得到一個(gè)新的關(guān)系的除運(yùn)算得到一個(gè)新的關(guān)系P(X),P是是R中滿足下列條件的元組在中滿足下列條件的元組在X屬性列上屬性列上的投影的投影:元組在元組在X上分量值上分量值x的象集的象集Yx包含包含S在在Y上投影的集合上投影的集合,記作記作:nRS=trX|tr R y(S) Yxn其中其中Yx為為x在在R中的象集中的象集,x=trX第十四頁,共57頁。15一:關(guān)系代數(shù)一:關(guān)系代數(shù)-專門的關(guān)系運(yùn)算專門的關(guān)
11、系運(yùn)算-除例題除例題ABCa1b1c2a2b3c7a3b4c6a1b2c3a4b6c6a2b2c3a1b2c1RBCDb1c2d1b2c1d1b2c3d2SRSAa1分析:在關(guān)系R中A可以取4個(gè)值a1,a2,a3,a4.其中a1的象集為:(b1,c2),(b2,c3),(b2,c1)a2的象集為:(b3,c7),(b2,c3)a3的象集為:(b4,c6)a4的象集為:(b6,c6)S在(B,C)上的投影為(b1,c2),(b2,c1),(b2,c3)第十五頁,共57頁。16一:關(guān)系代數(shù)一:關(guān)系代數(shù)-專門的關(guān)系運(yùn)算專門的關(guān)系運(yùn)算-例題例題n例例7:查詢至少選修了查詢至少選修了1號課程和號課程和3
12、號課程的學(xué)生號碼號課程的學(xué)生號碼n先建立臨時(shí)關(guān)系先建立臨時(shí)關(guān)系K:nSno,Cno(SC)K學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeStudentCouseSCCno13第十六頁,共57頁。17一:關(guān)系代數(shù)一:關(guān)系代數(shù)-專門的關(guān)系運(yùn)算專門的關(guān)系運(yùn)算-例題例題n例例8:查詢選修了查詢選修了2號課程的學(xué)生的學(xué)號號課程的學(xué)生的學(xué)號nSno (Cno=2(SC)=95001,95002n例例9:查詢至少選修了一門其直接先行課程為查詢至少選修了一門其直接先行課程為5號課程的學(xué)生姓名號課
13、程的學(xué)生姓名nSname(Cpno=5(Course) SC Sno,Sname(Student)nSno,Cno(SC) Cno(Course) Sno,Sname(Student)學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeStudentCouseSC第十七頁,共57頁。18一:關(guān)系代數(shù)一:關(guān)系代數(shù)-專門的關(guān)系運(yùn)算專門的關(guān)系運(yùn)算-例題例題n例例10:查詢選修了全部課程的學(xué)生號碼和姓名查詢選修了全部課程的學(xué)生號碼和姓名nSno,Cno(SC) Cno(Course) Sno,S
14、name(Student)學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudent第十八頁,共57頁。19二:二:SQLn1、SQL概述概述nStructured Query Language:通用的、通用的、功能極強(qiáng)的關(guān)系數(shù)據(jù)庫語言功能極強(qiáng)的關(guān)系數(shù)據(jù)庫語言n特點(diǎn):特點(diǎn):n(1).綜合統(tǒng)一綜合統(tǒng)一n(2).高度非過程化高度非過程化n(3).面向集合的操作方式面向集合的操作方式n(4).以同一種語法結(jié)構(gòu)提供兩種使用方式以同一種語法結(jié)構(gòu)提供兩種使用方式n(5).語言簡
15、捷、易學(xué)易用語言簡捷、易學(xué)易用第十九頁,共57頁。20二:二:SQLn數(shù)據(jù)查詢數(shù)據(jù)查詢nSELECTn數(shù)據(jù)定義數(shù)據(jù)定義nCREATE、DROPn數(shù)據(jù)操縱數(shù)據(jù)操縱nINSERT、UPDATE、DELETEn數(shù)據(jù)控制數(shù)據(jù)控制nGRANT、REVOKE第二十頁,共57頁。21二:二:SQL-數(shù)據(jù)查詢數(shù)據(jù)查詢SELECT FROM WHERE GROUP BY HAVING 內(nèi)部內(nèi)部函數(shù)表達(dá)式函數(shù)表達(dá)式ORDER BY ASC 或或 DESC 第二十一頁,共57頁。22二:二:SQL-數(shù)據(jù)操縱數(shù)據(jù)操縱1、UPDATEUPDATE SET = ,WHERE 2、INSERTINSERT INTO (列名
16、列名,)VALUES(表達(dá)式或函數(shù)表達(dá)式或函數(shù),)第二十二頁,共57頁。23二:二:SQL-數(shù)據(jù)操縱數(shù)據(jù)操縱n2、INSERT(續(xù))(續(xù))INSERT INTO SQL子查詢子查詢n3、DELETEDELETE FROM WHERE 第二十三頁,共57頁。24二:二:SQL-實(shí)例實(shí)例-查詢查詢n例例1:查詢?nèi)w學(xué)生的學(xué)號和姓名:查詢?nèi)w學(xué)生的學(xué)號和姓名n例例2:查詢?nèi)w學(xué)生的姓名、學(xué)號、所在系:查詢?nèi)w學(xué)生的姓名、學(xué)號、所在系學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeStude
17、ntCouseSCSELECT Sno,Sname FROM StudentSELECT Sname, Sno,Sdept FROM Student第二十四頁,共57頁。25二:二:SQL-實(shí)例實(shí)例-查詢查詢n例例3:查詢?nèi)w學(xué)生的詳細(xì)記錄:查詢?nèi)w學(xué)生的詳細(xì)記錄n例例4:查詢?nèi)w學(xué)生的姓名及其出生年份:查詢?nèi)w學(xué)生的姓名及其出生年份學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeStudentCouseSCSELECT * FROM StudentSELECT Sname,2004
18、-Sage FROM Student第二十五頁,共57頁。26二:二:SQL-實(shí)例實(shí)例-查詢查詢n例例5:查詢?nèi)w學(xué)生的姓名、出生年份和所在系,要求用小寫字母表示所在系:查詢?nèi)w學(xué)生的姓名、出生年份和所在系,要求用小寫字母表示所在系名名n例例6:查詢選修了課程的學(xué)生的學(xué)號:查詢選修了課程的學(xué)生的學(xué)號學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudentSELECT Sname,Year of Birth,2004-Sage, LOWER(Sdept) FROM
19、StudentSELECT Sno FROM SCSELECT DISTINCT Sno FROM SC第二十六頁,共57頁。27二:二:SQL-實(shí)例實(shí)例-查詢查詢n例例7:查詢計(jì)算機(jī)系全體學(xué)生的名單:查詢計(jì)算機(jī)系全體學(xué)生的名單n例例8:查詢所有年齡在:查詢所有年齡在20歲以下的學(xué)生姓名及其年齡歲以下的學(xué)生姓名及其年齡學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudentSELECT Sname FROM Student WHERE Sdept=CSSELECT
20、 Sname,Sage FROM Student WHERE Sage=20第二十七頁,共57頁。28二:二:SQL-實(shí)例實(shí)例-查查詢詢n例例9:查詢考試成績有不及格的學(xué)生的學(xué)號:查詢考試成績有不及格的學(xué)生的學(xué)號n例例10:查詢年齡在:查詢年齡在20-23歲之間的學(xué)生的姓名、系別和年齡歲之間的學(xué)生的姓名、系別和年齡學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudentSELECT DISTINCT Sno FROM SC WHERE Grade60SELECT
21、Sname,Sdept,Sage FROM Student WHERE Sage BETWEEN 20 AND 23SELECT Sname,Sdept,Sage FROM Student WHERE Sage=20第二十八頁,共57頁。29二:二:SQL-實(shí)例實(shí)例-查詢查詢例例11:查詢年齡在:查詢年齡在20-23歲之間的學(xué)生的姓名、系別和年齡歲之間的學(xué)生的姓名、系別和年齡例例12:查詢信息系:查詢信息系(IS),數(shù)學(xué)系數(shù)學(xué)系(MA),和計(jì)算機(jī)科學(xué)系和計(jì)算機(jī)科學(xué)系(CS)學(xué)生的姓名和性學(xué)生的姓名和性別別學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cnam
22、e先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudentSELECT Sname,Sdept,Sage FROM Student WHERE Sage NOT BETWEEN 20 AND 23SELECT Sname,Ssex FROM Student WHERE Sdept IN (IS,MA,CS)第二十九頁,共57頁。30二:二:SQL-實(shí)例實(shí)例-查詢查詢例例13:查詢不是信息系:查詢不是信息系,數(shù)學(xué)系數(shù)學(xué)系,和計(jì)算機(jī)科學(xué)系學(xué)生的姓名和性別和計(jì)算機(jī)科學(xué)系學(xué)生的姓名和性別例例14:查詢學(xué)號為:查詢學(xué)號為95001的學(xué)生的詳細(xì)情況的學(xué)生的詳細(xì)情況學(xué)
23、號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudentSELECT Sname,Ssex FROM Student WHERE Sdept NOT IN (IS,MA,CS)SELECT * FROM Student WHERE Sno LIKE 95001SELECT * FROM Student WHERE Sno=95001第三十頁,共57頁。31二:二:SQL-實(shí)例實(shí)例-查詢查詢n例例15:查詢所有姓劉的學(xué)生的姓名、學(xué)號和性別:查詢所有姓劉的學(xué)生的姓名、學(xué)
24、號和性別n例例16:查詢姓:查詢姓歐陽歐陽且全名為三個(gè)漢字的學(xué)生的姓名且全名為三個(gè)漢字的學(xué)生的姓名學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudentSELECT Sname,Sno,Ssex FROM Student WHERE Sname LIKE 劉%SELECT Sname FROM Student WHERE Sname LIKE 歐陽_第三十一頁,共57頁。32二:二:SQL-實(shí)例實(shí)例-查詢查詢n例例17:查詢名字中第:查詢名字中第2個(gè)字為個(gè)字為陽
25、陽字的學(xué)生的姓名和學(xué)號字的學(xué)生的姓名和學(xué)號n例例18:查詢所有不姓劉的學(xué)生的姓名:查詢所有不姓劉的學(xué)生的姓名學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudentSELECT Sname,Sno FROM Student WHERE Sname LIKE _陽%SELECT Sname FROM Student WHERE Sname NOT LIKE 劉%第三十二頁,共57頁。33二:二:SQL-實(shí)例實(shí)例-查詢查詢n例例19:查詢:查詢DB_Design課程的
26、課程號和學(xué)分課程的課程號和學(xué)分n例例20:查詢以:查詢以DB_開頭,且倒數(shù)第開頭,且倒數(shù)第3個(gè)字符為個(gè)字符為i 的課程的詳細(xì)情況的課程的詳細(xì)情況 學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudentSELECT Cno,Ccredit FROM Course WHERE Cname LIKE DB_DesignESCAPE SELECT * FROM Course WHERE Cname LIKE DB_%i_ESCAPE 第三十三頁,共57頁。34二:二:S
27、QL-實(shí)例實(shí)例-查詢查詢n例例21:查詢?nèi)鄙俪煽兊膶W(xué)生的學(xué)號和課程號:查詢?nèi)鄙俪煽兊膶W(xué)生的學(xué)號和課程號n例例22:查詢所有有成績的學(xué)生的學(xué)號和課程號:查詢所有有成績的學(xué)生的學(xué)號和課程號學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudentSELECT Sno,Cno FROM SC WHERE Grade IS NULLSELECT Sno,Cno FROM SC WHERE Grade IS NOT NULL第三十四頁,共57頁。35二二:SQL-實(shí)例實(shí)例-查
28、詢查詢n例例23:查詢計(jì)算機(jī)系年齡在:查詢計(jì)算機(jī)系年齡在20歲以下的學(xué)生姓名歲以下的學(xué)生姓名n例例12改寫:改寫:學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudentSELECT Sname FROM Student WHERE Sdept=is AND Sage3第三十九頁,共57頁。40二二:SQL-實(shí)例實(shí)例-查詢查詢n例例32:查詢每個(gè)學(xué)生及其選修課程的情況:查詢每個(gè)學(xué)生及其選修課程的情況n例例33:改寫:改寫學(xué)號Sno姓名Sname性別Ssex年齡Sa
29、ge所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudentSELECT Student.*,SC.* FROM Student,SC WHERE Student.Sno=SC.SnoSELECT Student.Sno,Sname,Ssex,Sage,Sdept,Cno,Grade FROM Student,SC WHERE Student.Sno=SC.Sno第四十頁,共57頁。41二二:SQL-實(shí)例實(shí)例-查詢查詢n例例34:查詢每門課程的間接先行課查詢每門課程的間接先行課學(xué)號Sno姓名Sname性別Sse
30、x年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudent課程號課程號Cno課程名課程名Cname先行課先行課Cpno學(xué)分學(xué)分Ccredit課程號課程號Cno課程名課程名Cname先行課先行課Cpno學(xué)分學(xué)分CcreditCouse FIRSTCouse SECONDSELECT FIRST.Cno,SECOND.Cpno FROM Course FIRST,Course SECONDWHERE FIRST.Cpno=SECOND.Cno第四十一頁,共57頁。42二二:SQL-實(shí)例實(shí)例-查詢查詢n例
31、例35:查詢選修了查詢選修了2號課程且成績在號課程且成績在90分以上的所有學(xué)生的學(xué)號和姓名分以上的所有學(xué)生的學(xué)號和姓名學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudentSELECT Student.Sno,Sname FROM Student,SCWHERE Student.Sno=SC.Sno AND SC.Cno=2 AND SC.Grade90第四十二頁,共57頁。43二二:SQL-實(shí)例實(shí)例-查詢查詢n例例36:查詢每個(gè)學(xué)生的學(xué)號、姓名、選修的課程名及
32、成績查詢每個(gè)學(xué)生的學(xué)號、姓名、選修的課程名及成績學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudentSELECT Student.Sno,Sname,Cname,Grade FROM Student,SC,CourseWHERE Student.Sno=SC.Sno AND SC.Cno=Course.Cno第四十三頁,共57頁。44二二:SQL-實(shí)例實(shí)例-查詢查詢n例例37:查詢與查詢與“劉晨劉晨”在同一個(gè)系學(xué)習(xí)的學(xué)生的學(xué)號、姓名、所在系在同一個(gè)系學(xué)習(xí)的學(xué)生
33、的學(xué)號、姓名、所在系學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudentSELECT Sno,Sname,Sdept FROM StudentWHERE Sdept IN (SELECT Sdept FROM Student WHERE Sname=劉晨)可用連接實(shí)現(xiàn)第四十四頁,共57頁。45二二:SQL-實(shí)例實(shí)例-查詢查詢n例例38:查詢選修了課查詢選修了課程名為程名為信息系統(tǒng)信息系統(tǒng)的學(xué)生的學(xué)號和姓名的學(xué)生的學(xué)號和姓名學(xué)號Sno姓名Sname性別Ssex年
34、齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudentSELECT Sno,SnameFROM StudentWHERE Cno IN (SELECT Cno FROM SC WHERE Cno IN (SELECT Cno FROM Course WHERE Cname=信息系統(tǒng))可用連接實(shí)現(xiàn)第四十五頁,共57頁。46二二:SQL-實(shí)例實(shí)例-查詢查詢n例例37改寫改寫學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sn
35、o課程號Cno成績GradeCouseSCStudentSELECT Sno,Sname,Sdept FROM StudentWHERE Sdept= (SELECT Sdept FROM Student WHERE Sname=劉晨)第四十六頁,共57頁。47二二:SQL-實(shí)例實(shí)例-查詢查詢n例例39:查詢其他系中比信息系某一學(xué)生年齡小的學(xué)生的姓名和年齡:查詢其他系中比信息系某一學(xué)生年齡小的學(xué)生的姓名和年齡學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudent
36、SELECT Sname,SageFROM StudentWHERE Sage ANY(SELECT Sage FROM Student WHERE Sdept=IS)第四十七頁,共57頁。48二二:SQL-實(shí)例實(shí)例-查詢查詢n例例40:查詢其他系中比信息系所有學(xué)生年齡小的學(xué)生的姓名和年齡:查詢其他系中比信息系所有學(xué)生年齡小的學(xué)生的姓名和年齡學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudentSELECT Sname,SageFROM StudentWHERE
37、 Sage ALL(SELECT Sage FROM Student WHERE Sdept=IS)第四十八頁,共57頁。49二二:SQL-實(shí)例實(shí)例-查詢查詢n例例41:查詢所有選修了:查詢所有選修了1號課程的學(xué)生姓名號課程的學(xué)生姓名學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudentSELECT Sname FROM StudentWHERE EXISTS (SELECT * FROM SC WHERE Sno=Student.Sno AND Cno=1)第
38、四十九頁,共57頁。50二二:SQL-實(shí)例實(shí)例-查詢查詢n例例42:查詢沒有選修了:查詢沒有選修了1號課程的學(xué)生姓名號課程的學(xué)生姓名學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudentSELECT Sname FROM StudentWHERE NOT EXISTS (SELECT * FROM SC WHERE Sno=Student.Sno AND Cno=1)第五十頁,共57頁。51二二:SQL-實(shí)例實(shí)例-查詢查詢n例例43:查詢選修了全部課:查詢選修了
39、全部課程的學(xué)生姓名程的學(xué)生姓名學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudentSELECT Sname FROM StudentWHERE NOT EXISTS (SELECT * FROM Course WHERE NOT EXISTS (SELECT * FROM SC WHERE Sno=Student.Sno AND Cno=Course.Cno)第五十一頁,共57頁。52二二:SQL-實(shí)例實(shí)例-查詢查詢n例例44:查詢至少選修了學(xué)生:查詢至少選修
40、了學(xué)生95002選修的全部課程的學(xué)生選修的全部課程的學(xué)生號碼號碼學(xué)號Sno姓名Sname性別Ssex年齡Sage所在系Sdept課程號Cno課程名Cname先行課Cpno學(xué)分Ccredit學(xué)號Sno課程號Cno成績GradeCouseSCStudentSELECT DISTINCT Sno FROM SC SCXWHERE NOT EXISTS (SELECT * FROM SC SCY WHERE SCY.Sno=95002 AND NOT EXISTS (SELECT * FROM SC SCZ WHERE SCZ.Sno=SCX.Sno AND SCZ.Cno=SCY.Cno)第五十二頁,共57頁。53二二:SQL-實(shí)例實(shí)例-數(shù)據(jù)更新數(shù)據(jù)更新n例例1:將一個(gè)新學(xué)生記錄:將一個(gè)新學(xué)
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 護(hù)理學(xué)課件可持續(xù)發(fā)展設(shè)計(jì)
- 染整化驗(yàn)室培訓(xùn)
- 2024-2025學(xué)年遼寧省沈文新高考研究聯(lián)盟高一下學(xué)期期末質(zhì)量監(jiān)測歷史試題(解析版)
- 2026年財(cái)經(jīng)知識普及財(cái)經(jīng)考試習(xí)題集
- 2026年英語四六級考試聽力與閱讀理解練習(xí)題集
- 2026年心理測試題庫情緒管理與壓力應(yīng)對
- 2026年環(huán)境評估考試習(xí)題集及解析
- 2026年農(nóng)業(yè)科技推廣員現(xiàn)代農(nóng)業(yè)技術(shù)應(yīng)用試題
- 2026年生物醫(yī)藥企業(yè)質(zhì)量管理的秘密武器GJB9001C精講習(xí)題集
- 2026年會計(jì)基礎(chǔ)與財(cái)務(wù)管理試題集
- 2024年浙江溫州市蒼南縣公投集團(tuán)所屬企業(yè)招聘筆試人員及管理單位遴選500模擬題附帶答案詳解
- 新生兒先天性心臟病篩查課件
- 景區(qū)與熱氣球合作合同范本
- 水庫除險(xiǎn)加固工程施工組織設(shè)計(jì)
- DL∕T 5210.5-2018 電力建設(shè)施工質(zhì)量驗(yàn)收規(guī)程 第5部分:焊接
- CJJT67-2015 風(fēng)景園林制圖標(biāo)準(zhǔn)
- 2023屆高考語文二輪復(fù)習(xí):小說標(biāo)題的含義與作用 練習(xí)題(含答案)
- 蘇教版四年級上冊四則混合運(yùn)算練習(xí)400題及答案
- 探傷檢測報(bào)告
- HSE管理體系培訓(xùn)課件
- 特發(fā)性血小板減少性紫癜-疑難病例討論課件
評論
0/150
提交評論