




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
AnIntroductiontoDatabaseSystem第二章關(guān)系數(shù)據(jù)庫(kù)2.1關(guān)系模型概述2.2關(guān)系數(shù)據(jù)結(jié)構(gòu)2.3關(guān)系的完整性2.4關(guān)系代數(shù)2.5關(guān)系演算2.6小結(jié)AnIntroductiontoDatabaseSystem2.4
關(guān)系代數(shù)
概述
傳統(tǒng)的集合運(yùn)算專門(mén)的關(guān)系運(yùn)算AnIntroductiontoDatabaseSystem概述1.關(guān)系代數(shù)2.運(yùn)算的三要素3.關(guān)系代數(shù)運(yùn)算的三個(gè)要素4.關(guān)系代數(shù)運(yùn)算的分類5.表示記號(hào)AnIntroductiontoDatabaseSystem概述1.關(guān)系代數(shù)
一種抽象的查詢語(yǔ)言--用對(duì)關(guān)系的運(yùn)算來(lái)表達(dá)查詢2.關(guān)系代數(shù)運(yùn)算的三個(gè)要素運(yùn)算對(duì)象:關(guān)系運(yùn)算結(jié)果:關(guān)系運(yùn)算符:四類AnIntroductiontoDatabaseSystem概述(續(xù))集合運(yùn)算符將關(guān)系看成元組的集合運(yùn)算是從關(guān)系的“水平”方向即行的角度來(lái)進(jìn)行專門(mén)的關(guān)系運(yùn)算符不僅涉及行而且涉及列算術(shù)比較符輔助專門(mén)的關(guān)系運(yùn)算符進(jìn)行操作邏輯運(yùn)算符輔助專門(mén)的關(guān)系運(yùn)算符進(jìn)行操作AnIntroductiontoDatabaseSystem集合運(yùn)算符∪-∩×并差交廣義笛卡爾積比較運(yùn)算符>≥<≤=≠大于大于等于小于小于等于等于不等于運(yùn)算符含義運(yùn)算符含義表2.4關(guān)系代數(shù)運(yùn)算符
概述(續(xù))AnIntroductiontoDatabaseSystem專門(mén)的關(guān)系運(yùn)算符σπ
÷選擇投影連接除邏輯運(yùn)算符∧∨非與或運(yùn)算符含義運(yùn)算符含義表2.4關(guān)系代數(shù)運(yùn)算符(續(xù))
概述(續(xù))AnIntroductiontoDatabaseSystem概述(續(xù))4.關(guān)系代數(shù)運(yùn)算的分類 傳統(tǒng)的集合運(yùn)算并、差、交、廣義笛卡爾積 專門(mén)的關(guān)系運(yùn)算選擇、投影、連接、除AnIntroductiontoDatabaseSystem2.4.1傳統(tǒng)的集合運(yùn)算并差交廣義笛卡爾積AnIntroductiontoDatabaseSystem1.并(Union)R和S具有相同的目n(即兩個(gè)關(guān)系都有n個(gè)屬性)相應(yīng)的屬性取自同一個(gè)域R∪S
仍為n目關(guān)系,由屬于R或?qū)儆赟的元組組成
R∪S={t|t
R∨tS}AnIntroductiontoDatabaseSystem并(續(xù))ABCa1b1c1a1b2c2a2b2c1ABCa1b1c1a1b2c2a1b3c2a2b2c1ABCa1b2c2a1b3c2a2b2c1RSR∪S
AnIntroductiontoDatabaseSystem2.差(Difference)R和S具有相同的目n相應(yīng)的屬性取自同一個(gè)域R-S
仍為n目關(guān)系,由屬于R而不屬于S的所有元組組成
R-S={t|tR∧tS}AnIntroductiontoDatabaseSystem差(續(xù))ABCa1b1c1a1b2c2a2b2c1ABCa1b1c1ABCa1b2c2a1b3c2a2b2c1RSR-S
AnIntroductiontoDatabaseSystem3.交(Intersection)R和S具有相同的目n相應(yīng)的屬性取自同一個(gè)域R∩S仍為n目關(guān)系,由既屬于R又屬于S的元組組成
R∩S={t|t
R∧tS} R∩S=R
–(R-S)AnIntroductiontoDatabaseSystem交(續(xù))ABCa1b1c1a1b2c2a2b2c1ABCa1b2c2a2b2c1ABCa1b2c2a1b3c2a2b2c1RSR∩S
AnIntroductiontoDatabaseSystem4.廣義笛卡爾積(ExtendedCartesianProduct)Rn目關(guān)系,k1個(gè)元組Sm目關(guān)系,k2個(gè)元組R×S
列:(n+m)列的元組的集合元組的前n列是關(guān)系R的一個(gè)元組后m列是關(guān)系S的一個(gè)元組行:k1×k2個(gè)元組R×S={tr
ts|tr
R∧tsS}AnIntroductiontoDatabaseSystem廣義笛卡爾積(續(xù))ABCa1b1c1a1b2c2a2b2c1ABCa1b1c1a1b1c1a1b1c1a1b2c2a1b2c2a1b2c2a2b2c1a2b2c1a2b2c1ABCa1b2c2a1b3c2a2b2c1RSR×S
ABCa1b2c2a1b3c2a2b2c1a1b2c2a1b3c2a2b2c1a1b2c2a1b3c2a2b2c1AnIntroductiontoDatabaseSystem2.4.2專門(mén)的關(guān)系運(yùn)算選擇投影連接除AnIntroductiontoDatabaseSystem1.選擇(Selection)1)選擇又稱為限制(Restriction)2)選擇運(yùn)算符的含義在關(guān)系R中選擇滿足給定條件的諸元組
σF(R)={t|tR∧F(t)='真'}F:選擇條件,是一個(gè)邏輯表達(dá)式,基本形式為:
[(]
X1θY1[)][φ[(]X2θY2[)]]…θ:比較運(yùn)算符(>,≥,<,≤,=或<>)X1,Y1等:屬性名、常量、簡(jiǎn)單函數(shù);屬性名也可以用它的序號(hào)來(lái)代替;φ:邏輯運(yùn)算符(∧或∨)[]:表示任選項(xiàng)…:表示上述格式可以重復(fù)下去AnIntroductiontoDatabaseSystem選擇(續(xù))3)選擇運(yùn)算是從行的角度進(jìn)行的運(yùn)算4)舉例 設(shè)有一個(gè)學(xué)生-課程數(shù)據(jù)庫(kù),包括學(xué)生關(guān)系Student、課程關(guān)系Course和選修關(guān)系SC。σAnIntroductiontoDatabaseSystem選擇(續(xù))[例1]查詢信息系(IS系)全體學(xué)生
σSdept
='IS'(Student)
或σ5='IS'(Student)結(jié)果:SnoSnameSsexSageSdept95002劉晨女19IS95004張立男19ISAnIntroductiontoDatabaseSystem2.投影(Projection)1)投影運(yùn)算符的含義從R中選擇出若干屬性列組成新的關(guān)系
πA(R)={t[A]|tR} A:R中的屬性列
AnIntroductiontoDatabaseSystem2.投影(Projection)2)投影操作主要是從列的角度進(jìn)行運(yùn)算但投影之后不僅取消了原關(guān)系中的某些列,而且還可能取消某些元組(避免重復(fù)行)πAnIntroductiontoDatabaseSystem投影(續(xù))3)舉例[例3]查詢學(xué)生的姓名和所在系 即求Student關(guān)系上學(xué)生姓名和所在系兩個(gè)屬性上的投影
πSname,Sdept(Student)
或π2,5(Student)結(jié)果:AnIntroductiontoDatabaseSystem投影(續(xù))SnameSdept李勇CS劉晨IS王敏MA張立ISAnIntroductiontoDatabaseSystem3.連接(Join)1)連接也稱為θ連接2)連接運(yùn)算的含義從兩個(gè)關(guān)系的笛卡爾積中選取屬性間滿足一定條件的元組
RS={|tr
R∧ts
S∧tr[A]θts[B]}A和B:分別為R和S上度數(shù)相等且可比的屬性組θ:比較運(yùn)算符
連接運(yùn)算從R和S的廣義笛卡爾積R×S中選?。≧關(guān)系)在A屬性組上的值與(S關(guān)系)在B屬性組上值滿足比較關(guān)系的元組。
AθBtrtsAnIntroductiontoDatabaseSystem
連接(續(xù))3)兩類常用連接運(yùn)算等值連接(equijoin)什么是等值連接θ為“=”的連接運(yùn)算稱為等值連接
等值連接的含義從關(guān)系R與S的廣義笛卡爾積中選取A、B屬性值相等的那些元組,即等值連接為:
RS={|tr
R∧tsS∧tr[A]=ts[B]}A=BtrtsAnIntroductiontoDatabaseSystem
連接(續(xù))自然連接(Naturaljoin)
什么是自然連接自然連接是一種特殊的等值連接兩個(gè)關(guān)系中進(jìn)行比較的分量必須是相同的屬性組在結(jié)果中把重復(fù)的屬性列去掉自然連接的含義
R和S具有相同的屬性組B
R
S={|trR∧tsS∧tr[B]=ts[B]}trtsAnIntroductiontoDatabaseSystem連接(續(xù))4)一般的連接操作是從行的角度進(jìn)行運(yùn)算。 自然連接還需要取消重復(fù)列,所以是同時(shí)從行和列的角度進(jìn)行運(yùn)算。
AθBRSAnIntroductiontoDatabaseSystem連接(續(xù))5)舉例
[例5]ABCa1b15a1b26a2b38a2b412BEb13b27b310b32b52RSAnIntroductiontoDatabaseSystem連接(續(xù))R
S
AR.BCS.BEa1b15b27a1b15b310a1b26b27a1b26b310a2b38b310
C<EAnIntroductiontoDatabaseSystem連接(續(xù))
等值連接R
SR.B=S.B
AR.BCS.BEa1b15b13a1b26b27a2b38b310a2b38b32AnIntroductiontoDatabaseSystem連接(續(xù))
自然連接R
S
ABCEa1b153a1b267a2b3810a2b382AnIntroductiontoDatabaseSystem4)象集Z
給定一個(gè)關(guān)系R(X,Z),X和Z為屬性組。當(dāng)t[X]=x時(shí),x在R中的象集(ImagesSet)為:
Zx={t[Z]|tR,t[X]=x}
它表示R中屬性組X上值為x的諸元組在Z上分量的集合。AnIntroductiontoDatabaseSystem4)象集ZABCa1b1c2a2b3c7a3b4c6a1b2c3a4b6c6a2b2c3a1b2c1BCDb1c2d1b2c1d1b2c3d2R÷SAa1RSAnIntroductiontoDatabaseSystem4.除(Division)給定關(guān)系R(X,Y)
和S(Y,Z),其中X,Y,Z為屬性組。R中的Y與S中的Y可以有不同的屬性名,但必須出自相同的域集。R與S的除運(yùn)算得到一個(gè)新的關(guān)系P(X),P是R中滿足下列條件的元組在X屬性列上的投影:元組在X上分量值x的象集Yx包含S在Y上投影的集合。
R÷S={tr[X]|tr
R∧πY(S)
Yx}
Yx:x在R中的象集,x=tr[X]AnIntroductiontoDatabaseSystem除(續(xù))2)除操作是同時(shí)從行和列角度進(jìn)行運(yùn)算
3)舉例
[例6](p62)÷RSAnIntroductiontoDatabaseSystem除(續(xù))ABCa1b1c2a2b3c7a3b4c6a1b2c3a4b6c6a2b2c3a1b2c1BCDb1c2d1b2c1d1b2c3d2R÷SAa1RSAnIntroductiontoDatabaseSystem分析:在關(guān)系R中,A可以取四個(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)}只有a1的象集包含了S在(B,C)屬性組上的投影所以R÷S={a1}AnIntroductiontoDatabaseSystem5.綜合舉例以學(xué)生-課程數(shù)據(jù)庫(kù)為例(P.59)[例7]查詢至少選修1號(hào)課程和3號(hào)課程的學(xué)生號(hào)碼
首先建立一個(gè)臨時(shí)關(guān)系K:
然后求:πo(SC)÷K
Cno
1
3AnIntroductiontoDatabaseSystem綜合舉例(續(xù))例7續(xù)πo(SC) 95001象集{1,2,3} 95002象集{2,3}πCno(K)={1,3}于是:πo(SC)÷K={95001}SnoCno950011950012950013950022950023AnIntroductiontoDatabaseSystem綜合舉例(續(xù))[例8]查詢選修了2號(hào)課程的學(xué)生的學(xué)號(hào)。
πSno(σCno='2'(SC))={95001,95002}
AnIntroductiontoDatabaseSystem綜合舉例(續(xù))[例9]查詢至少選修了一門(mén)其直接先行課為5號(hào)課程的課程的學(xué)生姓名。
πSname(σCpno='5'(CourseSCStudent))或
πSname(σCpno='5'(Course)SCπSno,Sname(Student))或πSname(πSno(σCpno='5'(Course)SC)πSno,Sname(Student))
AnIntroductiontoDatabaseSystem綜合舉例(續(xù))[例10]查詢選修了全部課程的學(xué)生號(hào)碼和姓名。
πSno,Cno(SC)÷πCno(Course)πSno,Sname(Student)
AnIntroductiontoDatabaseSystem小結(jié)l
關(guān)系代數(shù)運(yùn)算 關(guān)系代數(shù)運(yùn)算 并、差、交、笛卡爾積、投影、選擇、連接、除 基本運(yùn)算 并、差、笛卡爾積、投影、選擇 交、連接、除 可以用5種基本運(yùn)算來(lái)表達(dá)引進(jìn)它們并不增加語(yǔ)言的能力,但可以簡(jiǎn)化表達(dá)AnIntroductiontoDatabaseSystem小結(jié)(續(xù))l
關(guān)系代數(shù)表達(dá)式關(guān)系代數(shù)運(yùn)算經(jīng)有限次復(fù)合后形成的式子l
典型關(guān)系代數(shù)語(yǔ)言ISBL(InformationSystemBaseLanguage)由IBMUnitedKingdom研究中心研制用于PRTV(PeterleeRelationalTestVehicle)實(shí)驗(yàn)系統(tǒng)AnIntroductiontoDatabaseSystem下課了。。。休息一會(huì)兒。。。追求AnIntroductiontoDatabaseSystem第二章關(guān)系數(shù)據(jù)庫(kù)--2.5關(guān)系演算關(guān)系演算以數(shù)理邏輯中的謂詞演算為基礎(chǔ)種類:按謂詞變?cè)煌诸?.元組關(guān)系演算:以元組變量作為謂詞變?cè)幕緦?duì)象元組關(guān)系演算語(yǔ)言ALPHA2.域關(guān)系演算:以域變量作為謂詞變?cè)幕緦?duì)象域關(guān)系演算語(yǔ)言QBEAnIntroductiontoDatabaseSystem2.5.1元組關(guān)系演算語(yǔ)言ALPHA由E.F.Codd提出INGRES所用的QUEL語(yǔ)言是參照ALPHA語(yǔ)言研制的語(yǔ)句檢索語(yǔ)句GET更新語(yǔ)句PUT,HOLD,UPDATE,DELETE,DROPAnIntroductiontoDatabaseSystem一、檢索操作
語(yǔ)句格式:
GET
工作空間名
[(定額)](表達(dá)式1)
[:操作條件][DOWN/UP表達(dá)式2]
定額:規(guī)定檢索的元組個(gè)數(shù)格式:數(shù)字表達(dá)式1:指定語(yǔ)句的操作對(duì)象格式:關(guān)系名|關(guān)系名.屬性名|元組變量.屬性名|集函數(shù)[,…]操作條件:將操作結(jié)果限定在滿足條件的元組中格式:邏輯表達(dá)式表達(dá)式2:指定排序方式格式:關(guān)系名.屬性名|元組變量.屬性名[,…]AnIntroductiontoDatabaseSystem(1)簡(jiǎn)單檢索 GET工作空間名(表達(dá)式1)[例1]查詢所有被選修的課程號(hào)碼。GETW(o)
[例2]查詢所有學(xué)生的數(shù)據(jù)。GETW(Student)AnIntroductiontoDatabaseSystem(2)限定的檢索格式
GET
工作空間名(表達(dá)式1):操作條件[例3]查詢信息系(IS)中年齡小于20歲的學(xué)生的學(xué)號(hào)和年齡。
GETW(Student.Sno,Student.Sage):Student.Sdept='IS'∧Student.Sage<20AnIntroductiontoDatabaseSystem(3)帶排序的檢索格式
GET
工作空間名(表達(dá)式1)[:操作條件]DOWN/UP表達(dá)式2
[例4]查詢計(jì)算機(jī)科學(xué)系(CS)學(xué)生的學(xué)號(hào)、年齡,結(jié)果按年齡降序排序。
GETW(Student.Sno,Student.Sage):Student.Sdept='CS‘
DOWNStudent.SageAnIntroductiontoDatabaseSystem(4)帶定額的檢索
格式
:GET
工作空間名(定額)(表達(dá)式1)
[:操作條件][DOWN/UP
表達(dá)式2][例5]取出一個(gè)信息系學(xué)生的學(xué)號(hào)。
GETW(1)(Student.Sno): Student.Sdept='IS'
[例6]查詢信息系年齡最大的三個(gè)學(xué)生的學(xué)號(hào)及其年齡,結(jié)果按年齡降序排序。
GETW(3)(Student.Sno,Student.Sage):Student.Sdept='IS'DOWNStudent.SageAnIntroductiontoDatabaseSystem(5)用元組變量的檢索元組變量的含義表示可以在某一關(guān)系范圍內(nèi)變化(也稱為范圍變量RangeVariable)元組變量的用途①簡(jiǎn)化關(guān)系名:設(shè)一個(gè)較短名字的元組變量來(lái)代替較長(zhǎng)的關(guān)系名。②操作條件中使用量詞時(shí)必須用元組變量。定義元組變量格式:RANGE關(guān)系名變量名一個(gè)關(guān)系可以設(shè)多個(gè)元組變量AnIntroductiontoDatabaseSystem(6)用存在量詞的檢索[例8]查詢選修2號(hào)課程的學(xué)生名字。RANGESCXGETW(Student.Sname):X(X.Sno=Student.Sno∧o='2')[例9]查詢選修了這樣課程的學(xué)生學(xué)號(hào),其直接先行課是6號(hào)課程。RANGECourseCXGETW(SC.Sno):CX(Co=SC.Cno∧CX.Pcno='6')AnIntroductiontoDatabaseSystem
用存在量詞的檢索(續(xù))[例10]查詢至少選修一門(mén)其先行課為6號(hào)課程的學(xué)生名字RANGECourseCXSCSCX GETW(Student.Sname):SCX(SCX.Sno=Student.Sno∧CX(o∧CX.Pcno='6'))
前束范式形式:GETW(Student.Sname):SCXCX(SCX.Sno=Student.Sno∧o∧CX.Pcno='6')AnIntroductiontoDatabaseSystem(7)帶有多個(gè)關(guān)系的表達(dá)式的檢索
[例11]查詢成績(jī)?yōu)?0分以上的學(xué)生名字與課程名字。RANGESCSCXGETW(Student.Sname,ame):SCX(SCX.Grade≥90∧SCX.Sno=Student.Sno∧o=SCX.Cno)AnIntroductiontoDatabaseSystem(8)用全稱量詞的檢索
[例12]查詢不選1號(hào)課程的學(xué)生名字。RANGESCSCXGETW(Student.Sname):SCX(SCX.Sno≠Student.Sno∨o≠'1')用存在量詞表示:RANGESCSCXGETW(Student.Sname):SCX(SCX.Sno=Student.Sno∧o='1')AnIntroductiontoDatabaseSystem(9)用兩種量詞的檢索[例13]查詢選修了全部課程的學(xué)生姓名。RANGECourseCXSCSCXGETW(Student.Sname):CXSCX (SCX.Sno=Student.Sno∧ o)AnIntroductiontoDatabaseSystem(10)用蘊(yùn)函(Implication)的檢索
[例14]查詢最少選修了95002學(xué)生所選課程的學(xué)生學(xué)號(hào)。RANGECouseCXSCSCXSCSCYGETW(Student.Sno):CX(SCX(SCX.Sno='95002'∧o) SCY(SCY.Sno=Student.Sno∧ o=o))AnIntroductiontoDatabaseSystem(11)集函數(shù)常用集函數(shù)(Aggregationfunction)或內(nèi)部函數(shù)(Build-infunction)函數(shù)名功能COUNT
對(duì)元組計(jì)數(shù)TOTAL
求總和MAX
求最大值MIN
求最小值A(chǔ)VG
求平均值A(chǔ)nIntroductiontoDatabaseSystem集函數(shù)(續(xù))[例15]查詢學(xué)生所在系的數(shù)目。
GETW(COUNT(Student.Sdept))COUNT函數(shù)在計(jì)數(shù)時(shí)會(huì)自動(dòng)排除重復(fù)值。
[例16]查詢信息系學(xué)生的平均年齡GETW(AVG(Student.Sage):Student.Sdept='IS’)
AnIntroductiontoDatabaseSystem二、更新操作(1)修改操作(2)插入操作(3)刪除操作AnIntroductiontoDatabaseSystem(1)修改操作步驟①用HOLD語(yǔ)句將要修改的元組從數(shù)據(jù)庫(kù)中讀到工作空間中HOLD
工作空間名(表達(dá)式1)[:操作條件]HOLD語(yǔ)句是帶上并發(fā)控制的GET語(yǔ)句②用宿主語(yǔ)言修改工作空間中元組的屬性③用UPDATE語(yǔ)句將修改后的元組送回?cái)?shù)據(jù)庫(kù)中
UPDATE
工作空間名AnIntroductiontoDatabaseSystem修改操作(續(xù))[例17]把95007學(xué)生從計(jì)算機(jī)科學(xué)系轉(zhuǎn)到信息系。HOLDW(Student.Sno,Student.Sdetp):Student.Sno='95007'
(從Student關(guān)系中讀出95007學(xué)生的數(shù)據(jù))
MOVE'IS'TOW.Sdept
(用宿主語(yǔ)言進(jìn)行修改)
UPDATEW
(把修改后的元組送回Student關(guān)系)AnIntroductiontoDatabaseSystem(2)插入操作步驟①用宿主語(yǔ)言在工作空間中建立新元組②用PUT語(yǔ)句把該元組存入指定關(guān)系中
PUT
工作空間名(關(guān)系名)
PUT語(yǔ)句只對(duì)一個(gè)關(guān)系操作AnIntroductiontoDatabaseSystem插入操作(續(xù))[例18]學(xué)校新開(kāi)設(shè)了一門(mén)2學(xué)分的課程“計(jì)算機(jī)組織與結(jié)構(gòu)”,其課程號(hào)為8,直接先行課為6號(hào)課程。插入該課程元組MOVE'8'TOoMOVE'計(jì)算機(jī)組織與結(jié)構(gòu)'TOameMOVE'6'TOW.CpnoMOVE'2'TOW.CcreditPUTW(Course)AnIntroductiontoDatabaseSystem(3)刪除操作①用HOLD語(yǔ)句把要?jiǎng)h除的元組從數(shù)據(jù)庫(kù)中讀到工作空間中②用DELETE語(yǔ)句刪除該元組
DELETE
工作空間名AnIntroductiontoDatabaseSystem刪除操作(續(xù))[例19]95110學(xué)生因故退學(xué),刪除該學(xué)生元組。
HOLDW(Student):Student.Sno='95110'DELETEW
AnIntroductiontoDatabaseSystem刪除操作(續(xù))[例20]將學(xué)號(hào)95001改為95102。
HOLDW(Student):Student.Sno='95001'
DELETEWMOVE'95102'TOW.SnoMOVE'李勇'TOW.SnameMOVE'男'OW.SsexMOVE'20'TOW.SageMOVE'CS'TOW.Sdept
PUTW(Student)
AnIntroductiontoDatabaseSystem刪除操作(續(xù))[例21]刪除全部學(xué)生。
HOLDW(SC)DELETEW
HOLDW(Student)DELETEW在刪除操作中保持參照完整性AnIntroductiontoDatabaseSystem小結(jié):元組關(guān)系演算語(yǔ)言ALPHA檢索操作GETGET
工作空間名
[(定額)](表達(dá)式1)
[:操作條件][DOWN/UP表達(dá)式2]插入操作建立新元組--PUT修改操作HOLD--修改--UPDATE刪除操作HOLD--DELETEAnIntroductiontoDatabaseSystem2.5.2域關(guān)系演算語(yǔ)言QBE
l
一種典型的域關(guān)系演算語(yǔ)言 由M.M.Zloof提出
1978年在IBM370上得以實(shí)現(xiàn)
QBE也指此關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)l
QBE:QueryByExample
基于屏幕表格的查詢語(yǔ)言查詢要求:以填寫(xiě)表格的方式構(gòu)造查詢用示例元素(域變量)來(lái)表示查詢結(jié)果可能的情況查詢結(jié)果:以表格形式顯示AnIntroductiontoDatabaseSystemQBE操作框架
關(guān)系名屬性名操作命令元組屬性值或查詢條件或操作命令A(yù)nIntroductiontoDatabaseSystem一、檢索操作(1)用戶提出要求;(2)屏幕顯示空白表格;
(3)用戶在最左邊一欄輸入要查詢的關(guān)系名,例如Student;StudentAnIntroductiontoDatabaseSystem檢索操作(續(xù))(4)系統(tǒng)顯示該關(guān)系的屬性名
(5)用戶在上面構(gòu)造查詢要求
StudentSnoSnameSsexSageSdept
P.T
AO.C
StudentSnoSnameSsexSageSdept
AnIntroductiontoDatabaseSystem檢索操作(續(xù))(6)屏幕顯示查詢結(jié)果StudentSnoSnameSsexSageSdept
李勇張立
C
AnIntroductiontoDatabaseSystem構(gòu)造查詢的幾個(gè)要素示例元素即域變量一定要加下劃線示例元素是這個(gè)域中可能的一個(gè)值,它不必是查詢結(jié)果中的元素打印操作符P.
指定查詢結(jié)果所含屬性列查詢條件不用加下劃線可使用比較運(yùn)算符>,≥,<,≤,=和≠其中=可以省略排序要求AnIntroductiontoDatabaseSystem1.簡(jiǎn)單查詢[例1]查詢?nèi)w學(xué)生的全部數(shù)據(jù)。StudentSnoSnameSsexSageSdept
P.95001P.李勇P.男P.20P.CSAnIntroductiontoDatabaseSystem簡(jiǎn)單查詢(續(xù))
顯示全部數(shù)據(jù)也可以簡(jiǎn)單地把P.操作符作用在關(guān)系名上。StudentSnoSnameSsexSageSdept
P.
AnIntroductiontoDatabaseSystem2.條件查詢(1)簡(jiǎn)單條件
[例2]求信息系全體學(xué)生的姓名。StudentSnoSnameSsexSageSdept
P.李勇
ISAnIntroductiontoDatabaseSystem條件查詢(續(xù))
[例3]求年齡大于19歲的學(xué)生的學(xué)號(hào)。StudentSnoSnameSsexSageSdept
P.95001
>19AnIntroductiontoDatabaseSystem條件查詢(與條件)[例4]求計(jì)算機(jī)科學(xué)系年齡大于19歲的學(xué)生的學(xué)號(hào)。方法(1):把兩個(gè)條件寫(xiě)在同一行上StudentSnoSnameSsexSageSdept
P.95001
>19CSAnIntroductiontoDatabaseSystem條件查詢(續(xù))
方法(2):把兩個(gè)條件寫(xiě)在不同行上,但使用相同的示例元素值StudentSnoSnameSsexSageSdept
P.95001P.95001
>19CSAnIntroductiontoDatabaseSystem條件查詢(續(xù))[例5]查詢既選修了1號(hào)課程又選修了2號(hào)課程的學(xué)生的學(xué)號(hào)。SCSnoCnoGrade
P.95001P.9500112
AnIntroductiontoDatabaseSystem條件查詢(續(xù))[例6]查詢計(jì)算機(jī)科學(xué)系或者年齡大于19歲的學(xué)生的學(xué)號(hào)。StudentSnoSnameSsexSageSdept
P.95001P.95002
>19CSAnIntroductiontoDatabaseSystem
多表連接
[例7]查詢選修1號(hào)課程的學(xué)生姓名。
注意:示例元素Sno是連接屬性,其值在兩個(gè)表中要相同。SCSnoCnoGrade
950011
StudentSnoSnameSsexSageSdept
95001P.李勇
AnIntroductiontoDatabaseSystem條件查詢(非條件)[例8]查詢未選修1號(hào)課程的學(xué)生姓名
思路:顯示學(xué)號(hào)為95001的學(xué)生名字,而該學(xué)生選修1號(hào)課程的情況
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 河北科技師范學(xué)院《信息交互設(shè)計(jì)》2023-2024學(xué)年第二學(xué)期期末試卷
- 機(jī)械基礎(chǔ)習(xí)題集 參考答案 藍(lán)高龍
- 2025年免疫學(xué)工藝的試題及答案
- 人教版七年級(jí)歷史下學(xué)期第三單元明清時(shí)期至鴉片戰(zhàn)爭(zhēng)前統(tǒng)一多民族封建國(guó)家的鞏固與發(fā)展第3課時(shí)明朝的滅亡和清朝的建立測(cè)試試題(含答案)
- 2025年物體平穩(wěn)測(cè)試題及答案
- 2025年園區(qū)規(guī)劃考試試題及答案
- 2025年抽堵盲板作業(yè)試題及答案
- 2025年公文測(cè)試題及答案之三十
- 2025年皮膚類型測(cè)試試題及答案
- 2025年楊修之死測(cè)試題及答案
- 選擇性必修二《Unit 3 Food and Culture》單元課件及小結(jié)
- 實(shí)驗(yàn)室廢液處理臺(tái)賬
- 2024年湖南省岳陽(yáng)市中考數(shù)學(xué)一模試卷
- 2024年江蘇護(hù)理職業(yè)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)完美版
- 2024年國(guó)家公務(wù)員考試時(shí)事政治必考試題庫(kù)(完整版)
- 2021泛海三江JB-QBL-FJ300防火門(mén)監(jiān)視器說(shuō)明書(shū)
- 電子學(xué)會(huì)2022年12月青少年軟件編程Python等級(jí)考試試卷一級(jí)真題(含答案)
- 《微波法原油含水率在線檢測(cè)儀》
- 第1課 立足時(shí)代 志存高遠(yuǎn) (課件+視頻)- 【中職專用】高一思想政治《心理健康與職業(yè)生涯》(高教版2023·基礎(chǔ)模塊)
- 0-3歲嬰幼兒感覺(jué)統(tǒng)合訓(xùn)練智慧樹(shù)知到答案2024年杭州師范大學(xué)
- 19S406建筑排水管道安裝-塑料管道
評(píng)論
0/150
提交評(píng)論