版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第4章關(guān)系數(shù)據(jù)庫(kù)
4.1關(guān)系模型及其定義4.1.1關(guān)系數(shù)據(jù)結(jié)構(gòu)4.1.2關(guān)系操作概述
4.1.3關(guān)系的完整性
4.2關(guān)系代數(shù)4.2.1傳統(tǒng)的集合運(yùn)算
4.2.2專(zhuān)門(mén)的關(guān)系運(yùn)算
4.2.3用關(guān)系代數(shù)表示檢索的例子
4.1關(guān)系模型及其定義
4.1.1關(guān)系數(shù)據(jù)結(jié)構(gòu)1.關(guān)系的數(shù)學(xué)定義1)域的定義:域是一組具有相同數(shù)據(jù)類(lèi)型的值的集合。2)笛卡兒積(CartesianProduct)的定義:給定一組域D1,D2,…,Dn,這些域中可以有相同的部分,則笛卡兒積為:
D1×D2×…×Dn={(d1,d2,…dn)|di∈Di,i=1,2,…,n}.其中:每一個(gè)元素(d1,d2,…,dn
)稱(chēng)為一個(gè)n元組,簡(jiǎn)稱(chēng)元組。元素中的每一個(gè)值di稱(chēng)作一個(gè)分量)。
例如給出三個(gè)域:D1=姓名={王平,李麗,張曉剛}(cāng);D2=性別={男,女};D3=年齡={19,20}.則D1,D2,D3的笛卡兒積為D1×D2×D3
姓名性別年齡王平男19王平男20王平女19王平女20李麗男19李麗男20李麗女19李麗女20張曉剛男19張曉剛男20張曉剛女19張曉剛女201.關(guān)系的數(shù)學(xué)定義3)關(guān)系(Relation)的定義:D1×D2×…×Dn的子集稱(chēng)作在域D1,D2,…,Dn上的關(guān)系,表示為:R(D1,D2,…,Dn).
這里:R表示關(guān)系的名字,n是關(guān)系的目或度。從D1×D2×D3中取出有用的元組,所構(gòu)造的學(xué)生關(guān)系如表所示姓名性別年齡王平男20李麗女20張曉剛男192.關(guān)系中的基本名詞
1)元組:關(guān)系表中的每一橫行稱(chēng)作一個(gè)元組,組成元組的元素為分量。
2)屬性:關(guān)系中的每一列稱(chēng)為一個(gè)屬性。
3)候選碼、主碼:若關(guān)系中的某一屬性組(或單個(gè)屬性)的值能惟一地標(biāo)識(shí)一個(gè)元組,則稱(chēng)該屬性組(或?qū)傩裕楹蜻x碼。若關(guān)系的候選碼中只包含一個(gè)屬性,則稱(chēng)它為單屬性碼;若候選碼是由多個(gè)屬性構(gòu)成的,則稱(chēng)為它為多屬性碼。當(dāng)一個(gè)關(guān)系有多個(gè)候選碼時(shí),應(yīng)選定其中的一個(gè)候選碼為主碼。(如課程名,課程號(hào)在課程表中都是候選碼)4)全碼:若關(guān)系中只有一個(gè)候選碼,且這個(gè)候選碼中包括全部屬性,則這種候選碼為全碼。
5)主屬性和非主屬性:關(guān)系中,候選碼中的屬性稱(chēng)為主屬性,不包含在任何候選碼中的屬性稱(chēng)為非主屬性。
3.數(shù)據(jù)庫(kù)中關(guān)系的類(lèi)型
1)基本表:關(guān)系數(shù)據(jù)庫(kù)中實(shí)際存在的表,是實(shí)際存儲(chǔ)數(shù)據(jù)的邏輯表示。
2)視圖表:視圖表是由基本表或其他視圖表導(dǎo)出的表。
3)查詢(xún)表:查詢(xún)表是指查詢(xún)結(jié)果表或查詢(xún)中生成的臨時(shí)表。
4.數(shù)據(jù)庫(kù)中基本關(guān)系的性質(zhì)
1)同一屬性的數(shù)據(jù)具有同質(zhì)性.
2)同一關(guān)系的屬性名具有不能重復(fù)性。
3)關(guān)系中的列位置具有順序無(wú)關(guān)性。
4)關(guān)系具有元組無(wú)冗余性。
5)關(guān)系中的元組位置具有順序無(wú)關(guān)性。
6)關(guān)系中每一個(gè)分量都必須是不可分的數(shù)據(jù)項(xiàng)。5.關(guān)系模式的定義
形式化地表示為:R(U,D,Dom,F(xiàn))
其中:R為關(guān)系名,它是關(guān)系的形式化表示;U為組成該關(guān)系的屬性集合;D為屬性組U中屬性所來(lái)自的域;Dom為屬性向域的映象的集合;F為屬性間數(shù)據(jù)的依賴(lài)關(guān)系集合。
關(guān)系模式通??梢院?jiǎn)單記為:
R(U)或R(A1,A2,…,An).
其中:R為關(guān)系名,A1,A2,…,An為屬性名。6.關(guān)系數(shù)據(jù)庫(kù)
在某一應(yīng)用領(lǐng)域中,所有實(shí)體集及實(shí)體之間聯(lián)系所形成關(guān)系的集合就構(gòu)成了一個(gè)關(guān)系數(shù)據(jù)庫(kù)。
4.1.2關(guān)系操作概述關(guān)系操作的基本內(nèi)容
關(guān)系操作包括數(shù)據(jù)查詢(xún)、數(shù)據(jù)維護(hù)和數(shù)據(jù)控制三大功能.
關(guān)系操作的數(shù)據(jù)查詢(xún)和數(shù)據(jù)維護(hù)功能使用關(guān)系代數(shù)中的選擇(Select)、投影(Project)、連接(Join)、除(Divide)、并(Union)、交(Intersection)、差(Difference)以及廣義笛卡兒積(ExtendedCartesianProduct)8種操作。2.關(guān)系操作的特點(diǎn)(1)關(guān)系操作語(yǔ)言操作一體化關(guān)系語(yǔ)言具有數(shù)據(jù)定義、查詢(xún)、更新、控制一體化的特點(diǎn)。(2)關(guān)系操作的方式是一次一集合方式(3)關(guān)系操作語(yǔ)言是高度非過(guò)程化的語(yǔ)言
3.關(guān)系操作語(yǔ)言的種類(lèi)(1)關(guān)系代數(shù)語(yǔ)言
用對(duì)關(guān)系的運(yùn)算來(lái)表達(dá)查詢(xún)要求的語(yǔ)言。(2)關(guān)系演算語(yǔ)言
用查詢(xún)得到的元組應(yīng)滿(mǎn)足的謂詞條件來(lái)表達(dá)查詢(xún)要求的語(yǔ)言。關(guān)系演算語(yǔ)言又可以分為元組演算語(yǔ)言和域演算語(yǔ)言?xún)煞N:元組演算語(yǔ)言的謂詞變?cè)幕緦?duì)象是元組變量,例如APLHA語(yǔ)言;域演算語(yǔ)言的謂詞變?cè)幕緦?duì)象是域變量,QBE(QueryByExample)是典型的域演算語(yǔ)言。(3)基于映象的語(yǔ)言
具有關(guān)系代數(shù)和關(guān)系演算雙重特點(diǎn)的語(yǔ)言。SQL是基于映象的語(yǔ)言。SQL包括數(shù)據(jù)定義、數(shù)據(jù)操作和數(shù)據(jù)控制三種功能,具有語(yǔ)言簡(jiǎn)潔,易學(xué)易用的特點(diǎn),它是關(guān)系數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)語(yǔ)言和主流語(yǔ)言。4.1.3關(guān)系的完整性1.關(guān)系模型的實(shí)體完整性(EntityIntegrity)
若屬性A是基本關(guān)系R的主屬性,則屬性A的值(各分量)不能為空值。
說(shuō)明如下:
1)實(shí)體完整性能夠保證實(shí)體的唯一性。
2)實(shí)體完整性能夠保證實(shí)體的可區(qū)分性?,F(xiàn)有如下關(guān)系S(學(xué)號(hào),姓名,性別,專(zhuān)業(yè)號(hào),年齡)C(課程號(hào),課程名,學(xué)分);SC(學(xué)號(hào),課程號(hào),成績(jī)).
現(xiàn)有用戶(hù)向數(shù)據(jù)庫(kù)中輸入如下記錄,是否插入成功Insertintos(‘01’,’chen’,’女’,’07’,22)----successInsertintoc(‘’,’數(shù)據(jù)庫(kù)原理及應(yīng)用’,3)Insertintosc(’01’,’’,68)Insertintosc(’02’,’01’,90)2.關(guān)系模型的參照完整性
1)外碼和參照關(guān)系
設(shè)F是基本關(guān)系R的一個(gè)或一組屬性,但不是關(guān)系R的主碼(或候選碼)。如果F與基本關(guān)系S的主碼相對(duì)應(yīng),則稱(chēng)F是R的外碼,并稱(chēng)R為參照關(guān)系,S為被參照關(guān)系或目標(biāo)關(guān)系。例如,“基層單位數(shù)據(jù)庫(kù)”中有“職工”和“部門(mén)”兩個(gè)關(guān)系,其關(guān)系模式如下:
職工(職工號(hào),姓名,工資,性別,部門(mén)號(hào));
部門(mén)(部門(mén)號(hào),名稱(chēng),領(lǐng)導(dǎo)人號(hào)).
其中:主碼用下劃線標(biāo)出,外碼用紅色標(biāo)出。再例,在學(xué)生課程庫(kù)中,關(guān)系模式表示為:
學(xué)生(學(xué)號(hào),姓名,性別,專(zhuān)業(yè)號(hào),年齡);
課程(課程號(hào),課程名,學(xué)分);
選修(學(xué)號(hào),課程號(hào),成績(jī)).
其中:主碼用下劃線標(biāo)出。2)參照完整性規(guī)則
若屬性(或?qū)傩越M)F是基本關(guān)系R的外碼,它與基本關(guān)系S的主碼Ks相對(duì)應(yīng)(基本關(guān)系R和S不一定是不同的關(guān)系),則對(duì)于R中每個(gè)元組在F上的值必須取空值(F的每個(gè)屬性值均為空值)或者等于S中某個(gè)元組的主碼值。學(xué)生(學(xué)號(hào),姓名,性別,專(zhuān)業(yè)號(hào),年齡)專(zhuān)業(yè)(專(zhuān)業(yè)號(hào),專(zhuān)業(yè)名)學(xué)生關(guān)系中每個(gè)元組的”專(zhuān)業(yè)號(hào)”屬性只能是下面的兩類(lèi)型值:1)空值:該學(xué)生未分配專(zhuān)業(yè)2)非空值:該值必須是專(zhuān)業(yè)關(guān)系中某個(gè)元組的”專(zhuān)業(yè)號(hào)”值。表示該學(xué)生分配到一個(gè)存在的專(zhuān)業(yè)中參照完整性S(學(xué)號(hào),姓名,姓名,專(zhuān)業(yè)號(hào),年齡)C(課程號(hào),課程名,學(xué)分)SC(學(xué)號(hào),課程號(hào),成績(jī))INSERTINTOC(‘01’,’數(shù)據(jù)庫(kù)原理’,3)成功INSERTINTOSC(‘01’,’02’,68)失敗INSERTINTOSC(‘02’,’01’,90)失敗違背實(shí)體完整性,沒(méi)有違背參照完整性INSERTINTOSC(‘0’,’’,68)失敗假設(shè)數(shù)據(jù)庫(kù)中存在關(guān)系模式:Employee(職工號(hào),領(lǐng)導(dǎo)者職工號(hào),姓名)自參照完整性,Insertintoemployee(’01’,’01’,’chen’)insertintoemployee(’02’,’01’,’xia’)成功Insertintoemployee(’03’,’02’,’chen’)Insertintoemployee(’05’,’04’,’chen’)選修關(guān)系中成績(jī)?cè)?—100之間某個(gè)屬性取值(如課程名)唯一值3用戶(hù)定義的完整性。
用戶(hù)定義的完整性就是針對(duì)某一具體關(guān)系數(shù)據(jù)庫(kù)的約束條件,它反映某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿(mǎn)足的語(yǔ)義要求。4.2關(guān)系代數(shù)1)集合運(yùn)算符:∪(并運(yùn)算),-(差運(yùn)算),∩(交運(yùn)算),×(廣義笛卡兒積)。2)專(zhuān)門(mén)的關(guān)系運(yùn)算符:σ(選擇),π(投影),(連接),÷(除)。3)比較運(yùn)算符:>(大于),≥(大于等于),<(小于),≤(小于等于),=(等于),≠(不等于)。4)邏輯運(yùn)算符:(非),∧(與),∨(或)。
4.2.1傳統(tǒng)的集合運(yùn)算
設(shè)關(guān)系R和S具有相同的目n(即兩個(gè)關(guān)系都有n個(gè)屬性),且相應(yīng)的屬性取自同一個(gè)域。
1.并(Union)運(yùn)算
R∪S={t|tR∨tS}.
R和S并的結(jié)果仍為n目關(guān)系,其數(shù)據(jù)由屬于R或?qū)儆赟的元組組成。
2.差(Difference)運(yùn)算
R–S={t|tR∧tS}.
R和S差運(yùn)算的結(jié)果關(guān)系仍為n目關(guān)系,其數(shù)據(jù)由屬于R而不屬于S的所有元組組成。
3.交(Intersection)運(yùn)算
R∩S={t|tR∧tS}.
運(yùn)算的結(jié)果關(guān)系仍為n目關(guān)系,其數(shù)據(jù)由既屬于R同時(shí)又屬于S的元組組成。交可用差來(lái)表示:
R∩S=R–(R–S)
.4.笛卡兒積運(yùn)算
設(shè)n目和m目的關(guān)系R和S,它們的笛卡兒積是一個(gè)(n+m)目的元組集合。元組的前n列是關(guān)系R的一個(gè)元組,后m列是關(guān)系S的一個(gè)元組。若R有k1個(gè)元組,S有k2個(gè)元組,則關(guān)系R和關(guān)系S的廣義笛卡兒積應(yīng)當(dāng)有k1×k2個(gè)元組。R和S的笛卡兒積表示為:
R×S={trts|trR∧tsS}.傳統(tǒng)集合運(yùn)算的實(shí)例
ABC
ABC
ABCa1b1c1a1b2c2a1b1c1a1b2c2a1b3c2a1b2c2a2b2c1
a2b2c1
a1b3c2RSR∪S
ABC
R.AR.BR.CS.AS.BS.Ca1b1C1a1b1c1a1b2c2a2b2C1a1b1c1a1b3c2
R∩Sa1b2c2a1b2c2a1b2c2a1b3c2ABCa2b2c1a1b2c2a1b2C2a2b2c1a1b3c2R-SR×S
ABabcdecABdbdaacRSR-SR∪S4.2.2專(zhuān)門(mén)的關(guān)系運(yùn)算1.記號(hào)說(shuō)明
(1)關(guān)系模式、關(guān)系、元組和分量
設(shè)關(guān)系模式為R(A1,A2,…,An),它的一個(gè)關(guān)系設(shè)為R,tR表示t是R的一個(gè)元組,t[Ai]則表示元組t中相對(duì)于屬性Ai的一個(gè)分量。
(2)域列和域列非
若A={Ai1,Ai2,…,Aik},其中Ai1,Ai2,…,Aik是A1,A2,…,An中的一部分,則A稱(chēng)為屬性列或域列,t[A]={t[Ai1],t[Ai2],…,t[Aik]}表示元組t在屬性列A上諸分量的集合。則表示{A1,A2,…,An}中去掉{Ai1,Ai2,…,Aik}后剩余的屬性組,它稱(chēng)為A的域列非。(3)元組連串(Concatenation)
設(shè)R為n目關(guān)系,S為m目關(guān)系,且trR,tSS,則trtS稱(chēng)為元組的連串。連串是一個(gè)(n+m)列的元組,它的前n個(gè)分量是R中的一個(gè)n元組,后m個(gè)分量為S中的一個(gè)m元組。(4)屬性的象集(ImagesSet)
給定一個(gè)關(guān)系R(X,Z),X和Z為屬性組。定義當(dāng)t[X]=x時(shí),x在R中的象集為:
Zx={t[Z]|tR,t[X]=x}.
上式表示,x在R中的象集為R中Z屬性對(duì)應(yīng)分量的集合,而這些分量所對(duì)應(yīng)的元組中的屬性組X上的值應(yīng)為x。2.專(zhuān)門(mén)關(guān)系運(yùn)算的定義(1)選擇(Selection)運(yùn)算
選擇運(yùn)算又稱(chēng)為限制運(yùn)算。選擇運(yùn)算指在關(guān)系R中選擇滿(mǎn)足給定條件的元組,記作:
σF(R)={t|tR∧F(t)=‘真’}.
其中:F表示選擇條件,是一個(gè)邏輯表達(dá)式,取值為“真”或“假”。F由邏輯運(yùn)算符﹁(非)、∧(與)和∨(或)連接各條件表達(dá)式組成。
條件表達(dá)式的基本形式為:X1θY1.
其中:θ是比較運(yùn)算符,它可以是>、≥、<、≤、=、≠中的一種;X1和Y1是屬性名、常量或簡(jiǎn)單函數(shù);屬性名也可以用它的序號(hào)來(lái)代替。選擇操作是根據(jù)某些條件對(duì)關(guān)系做水平分割,即選取符合條件的元組例如,σ2>ˊ3ˊ(R)表示從R中挑選第2個(gè)分量值大于3的元組所構(gòu)成的關(guān)系。書(shū)寫(xiě)時(shí),為了與屬性序號(hào)區(qū)別起見(jiàn),常量用引號(hào)括起來(lái),而屬性序號(hào)或?qū)傩悦灰靡?hào)括起來(lái)。用關(guān)系代數(shù)表示下列操作
設(shè)學(xué)生課程數(shù)據(jù)庫(kù),其關(guān)系模式為:
學(xué)生(學(xué)生,姓名,年齡,所在系);
課程(課程號(hào),課程名,學(xué)分);
選課(學(xué)號(hào),課程號(hào),成績(jī)).【例4-1】用關(guān)系代數(shù)表示在學(xué)生課程數(shù)據(jù)庫(kù)中查詢(xún)計(jì)算機(jī)系的全體學(xué)生的操作。
σ所在系='計(jì)算機(jī)系'(學(xué)生)【例4-2】用關(guān)系代數(shù)表示在學(xué)生課程數(shù)據(jù)庫(kù)中查詢(xún)年齡小于20歲的學(xué)生的操作。
σ年齡<20(學(xué)生)(2)投影(Projection)運(yùn)算
這個(gè)操作是對(duì)一個(gè)關(guān)系進(jìn)行垂直分割,消去某些列,并重新安排列的順序。
關(guān)系R上的投影是從R中選擇出若干屬性列組成新的關(guān)系,記作:
πA(R)={t[A]|tR}.【例4-3】在學(xué)生課程數(shù)據(jù)庫(kù)中,查詢(xún)學(xué)生的姓名和所在系。表示為:π姓名,所在系(學(xué)生)例如,π3,1(R)表示關(guān)系R中取第1、3列,組成新的關(guān)系,新關(guān)系中第1列為R的第3列,新關(guān)系的第2列為R的第1列。如果R的每列標(biāo)上屬性名,那么操作符π的下標(biāo)處也可以用屬性名表示。例如,關(guān)系R(A,B,C),那么πC,A(R)與π3,1(R)是等價(jià)的。(3)連接運(yùn)算
連接是從兩個(gè)關(guān)系的笛卡兒積中選取屬性間滿(mǎn)足一定條件的元組。記作:
RS={trts|trR∧tsS∧tr[A]θts[B]}.
AθB
其中:A和B分別為R和S上度數(shù)相等且可比的屬性組,θ是比較運(yùn)算符。等值連接表示為:
R
S={trts|trR∧tsS∧tr[A]=ts[B]}.
A=B
說(shuō)明:1.
也可以寫(xiě)成。2.≡σ2<4(R×S)自然連接是一種特殊的等值連接:
RS={trts|trR∧tsS∧tr[A]=ts[A]}自然連接(naturaljoin)
兩個(gè)關(guān)系R和S的自然連接操作具體計(jì)算過(guò)程如下:①計(jì)算R×S;②設(shè)R和S的公共屬性是A1,…,AK,挑選R×S中滿(mǎn)足R.A1=S.A1,…,R.AK=S.AK的那些元組;③去掉S.A1,…,S.AK這些列。定義:其中i1,…,im為R和S的全部屬性,但公共屬性只出現(xiàn)一次。
≡【例4-4】設(shè)學(xué)生和選課關(guān)系中的數(shù)據(jù)如下,學(xué)生與選課之間的笛卡兒積、等值連接和自然連接的結(jié)果如表所示。
學(xué)號(hào)姓名年齡所在系
學(xué)號(hào)課程名成績(jī)98001張三20計(jì)算機(jī)系98001數(shù)據(jù)庫(kù)6298005李四21數(shù)學(xué)系98001數(shù)據(jù)結(jié)構(gòu)73
98005微積分80學(xué)生
選課學(xué)生.學(xué)號(hào)姓名年齡所在系選課.學(xué)號(hào)課名成績(jī)980019800198001980059800598005張三張三張三李四李四李四202020212121計(jì)算機(jī)系計(jì)算機(jī)系計(jì)算機(jī)系數(shù)學(xué)系數(shù)學(xué)系數(shù)學(xué)系980019800198005980019800198005數(shù)據(jù)庫(kù)數(shù)據(jù)結(jié)構(gòu)微積分?jǐn)?shù)據(jù)庫(kù)數(shù)據(jù)結(jié)構(gòu)微積分627380627380學(xué)生×選課
學(xué)生.學(xué)號(hào)姓名年齡所在系選課.學(xué)號(hào)課名成績(jī)980019800198005張三張三李四202021計(jì)算機(jī)系計(jì)算機(jī)系數(shù)學(xué)系980019800198005數(shù)據(jù)庫(kù)數(shù)據(jù)結(jié)構(gòu)微積分627380學(xué)生.學(xué)號(hào)姓名年齡所在系課名成績(jī)980019800198005張三張三李四202021計(jì)算機(jī)系計(jì)算機(jī)系數(shù)學(xué)系數(shù)據(jù)庫(kù)數(shù)據(jù)結(jié)構(gòu)微積分627380學(xué)生選課
學(xué)生.學(xué)號(hào)=選課.學(xué)號(hào)學(xué)生選課
ABCA1A1A2A2B1B2B3B456812BEB1B2B3B3B5371022關(guān)系R關(guān)系SAR.BCS.BEA1A1A1A1A2B1B1
B2
B2
B355668B2B3
B2
B3
B371071010一般連接RSC<EABCEA1A1A2A2B1B2B3B3568837102自然連接RSABCA1A1A2A2B1B2B3B456812BEB1B2B3B3B5371022關(guān)系R關(guān)系S兩個(gè)關(guān)系R和S在做自然連接時(shí),選擇兩個(gè)關(guān)系在公共屬性上值相等的元組構(gòu)成新的關(guān)系。此時(shí),關(guān)系R中某些元組有可能在S中不存在公共屬性上值相等的元組,從而造成R中這些元組在操作時(shí)被舍棄了,同樣,S中某些元組也可能被舍棄。如果把舍棄的元組也保存在結(jié)果關(guān)系中,而在其他屬性上填空值(Null),那么這種連接就叫做外連接(Outerjoin)。如果只把左邊關(guān)系R中要舍棄的元組保留就叫做左外連接(Leftouterjoin或Leftjoin),如果只把右邊關(guān)系S中要舍棄的元組保留就叫做右外連接(Rightouterjoin或Rightjoin)。ABCEa1a1a2a2a2NULLb1b2b3b3b4b5568812NULL37102NULL2ABCEa1a1a2a2a2b1b2b3b3b456881237102NULLABCEa1a1a2a2NULLb1b2b3b3b55688NULL371022ABCa1a1a2a2b1b2b3b456812BEb1b2b3b3b5371022關(guān)系R關(guān)系S外連接左外連接右外連接RSABCabcbafcbdABCbafdad
R1=R-S,R2=R∪S,R3=R∩S,R4=R×SRSABCa1b1c1a1b2c2a2b2c1ABCa1b2c2a2b2c1R1=R-S,R2=R∪S,R3=R∩S,R4=ПA,B(σB=‘b1’(R))RSTABadbeccABdabadcACbbccbdR1=R-S,R2=R∪S,R3=R∞T,R4=R∞T,R5=ПA(R),R6=σA=C(R×T)
A<C(4)除(Division)運(yùn)算
給定關(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中滿(mǎn)足下列條件的元組在X屬性列上的投影:元組在X上的分量值x的象集Yx包含S在Y上的投影,即:
R÷S={tr[X]|tr
R∧πY(S)Yx}.
其中的Yx為x在R中的象集,x=tr[X]。
關(guān)系除法運(yùn)算分下面4步進(jìn)行:
1)將被除關(guān)系的屬性分為象集屬性和結(jié)果屬性:與除關(guān)系相同的屬性屬于象集屬性,不相同的屬性屬于結(jié)果屬性。
2)在除關(guān)系中,對(duì)與被除關(guān)系相同的屬性(象集屬性)進(jìn)行投影,得到除目標(biāo)數(shù)據(jù)集。
3)將被除關(guān)系分組,原則是,結(jié)果屬性值一樣的元組分為一組。
4)逐一考察每個(gè)組,如果它的象集屬性值中包括除目標(biāo)數(shù)據(jù)集,則對(duì)應(yīng)的結(jié)果屬性值應(yīng)屬于該除法運(yùn)算結(jié)果集。例關(guān)系做除法的例子?!纠?-5】給出選課、選修課和必修課3個(gè)關(guān)系,它們的關(guān)系模式為:選課(學(xué)號(hào),課號(hào),成績(jī));選修課(課號(hào),課名);必修課(課號(hào),課名).選課選修課學(xué)號(hào)課號(hào)成績(jī)
課號(hào)課名S1C1AC2計(jì)算機(jī)圖形學(xué)S1C2B必修課S1C3BS2C1A課號(hào)科名S2C3BC1數(shù)據(jù)結(jié)構(gòu)S3C1BC3操作系統(tǒng)S3C3B選課÷選修課S4C1AS4C2A學(xué)號(hào)成績(jī)S5C2BS1BS5C3BS4AS5C1AS5B學(xué)號(hào)成績(jī)
學(xué)號(hào)S3BS1
S2S3S5選課÷必修課π學(xué)號(hào),課號(hào)(選課)÷必修課
4.2.3用關(guān)系代數(shù)表示檢索的例子學(xué)生選課庫(kù)的關(guān)系模式為:
學(xué)生(
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 合模機(jī)項(xiàng)目安全風(fēng)險(xiǎn)評(píng)價(jià)報(bào)告
- 無(wú)源液封水表行業(yè)行業(yè)發(fā)展趨勢(shì)及投資戰(zhàn)略研究分析報(bào)告
- 大學(xué)護(hù)理畢業(yè)生自我鑒定5篇
- 關(guān)于幼師自我鑒定模板錦集9篇
- 私人借款協(xié)議書(shū)
- 綜合執(zhí)法網(wǎng)絡(luò)課程設(shè)計(jì)
- 測(cè)量專(zhuān)業(yè)實(shí)習(xí)報(bào)告范文七篇
- 艱苦的軍訓(xùn)心得體會(huì)600字
- 旅游管理實(shí)習(xí)心得體會(huì)8篇
- 文員類(lèi)實(shí)習(xí)報(bào)告模板集合六篇
- 聚酰胺酰亞胺實(shí)驗(yàn)報(bào)告
- 污水處理廠污泥處理處置投標(biāo)方案
- 智能包裝設(shè)計(jì)智慧樹(shù)知到課后章節(jié)答案2023年下湖南工業(yè)大學(xué)
- 上海市交大二附中2024屆數(shù)學(xué)七年級(jí)第一學(xué)期期末質(zhì)量跟蹤監(jiān)視模擬試題含解析
- 豐田工作方法精髓-問(wèn)題解決法(八步法)課件
- 老年人冬季健康保健知識(shí)講座課件
- 老年病及老年綜合征中醫(yī)證治概要
- 三年級(jí)上冊(cè)數(shù)學(xué)說(shuō)課稿- 2.2 看一看(二)-北師大版
- 超星爾雅學(xué)習(xí)通《西廂記》賞析(首都師范大學(xué))網(wǎng)課章節(jié)測(cè)試答案
- 切削液的配方
- 塑料門(mén)窗及型材功能結(jié)構(gòu)尺寸
評(píng)論
0/150
提交評(píng)論