第4章關(guān)系數(shù)據(jù)庫(kù)_第1頁(yè)
第4章關(guān)系數(shù)據(jù)庫(kù)_第2頁(yè)
第4章關(guān)系數(shù)據(jù)庫(kù)_第3頁(yè)
第4章關(guān)系數(shù)據(jù)庫(kù)_第4頁(yè)
第4章關(guān)系數(shù)據(jù)庫(kù)_第5頁(yè)
已閱讀5頁(yè),還剩61頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論