版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 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 專門的關(guān)系運(yùn)算 4.2.3 用關(guān)系代數(shù)表示檢索的例子 4.1.1 關(guān)系數(shù)據(jù)結(jié)構(gòu)關(guān)系數(shù)據(jù)結(jié)構(gòu)1. 關(guān)系的數(shù)學(xué)定義關(guān)系的數(shù)學(xué)定義1) 域的定義:域是一組具有相同數(shù)據(jù)類型的值的集合。域的定義:域是一組具有相同數(shù)據(jù)類型的值的集合。2) 笛卡兒積(笛卡兒積(Cartesian Product)的定義:給定一組域)的定義:給定一組域D1,D2,Dn,這些域中可以有相同的部分,則,這些域中可以有相同的部分,則笛卡兒積為:笛卡兒積為: D1D2Dn =
2、(d1,d2,dn)di Di,i1,2,n.其中:每一個(gè)元素(d1,d2,dn )稱為一個(gè)n元組,簡稱元組。元素中的每一個(gè)值di稱作一個(gè)分量)。 例如給出三個(gè)域:例如給出三個(gè)域: D1 = 姓名 = 王平,李麗,張曉剛;D2 = 性別 = 男,女;D3 = 年齡 = 19,20.則則D1,D2,D3的笛卡兒積為的笛卡兒積為D1D2D3 姓名姓名性別性別年齡年齡王平王平男男19王平王平男男20王平王平女女19王平王平女女20李麗李麗男男19李麗李麗男男20李麗李麗女女19李麗李麗女女20張曉剛張曉剛男男19張曉剛張曉剛男男20張曉剛張曉剛女女19張曉剛張曉剛女女201. 關(guān)系的數(shù)學(xué)定義關(guān)系的數(shù)
3、學(xué)定義3) 關(guān)系(關(guān)系(Relation)的定義:)的定義:D1 D2 Dn的子集的子集稱作在域稱作在域D1,D2,Dn上的關(guān)系,表示為:上的關(guān)系,表示為: R(D1,D2,Dn).這里:這里:R表示關(guān)系的名字,表示關(guān)系的名字,n是關(guān)系的目或度。是關(guān)系的目或度。從從D1D2D3中取出有用的元組,所構(gòu)造的學(xué)生關(guān)系中取出有用的元組,所構(gòu)造的學(xué)生關(guān)系如表所示如表所示姓名姓名性別性別年齡年齡王平王平男男20李麗李麗女女20張曉剛張曉剛男男19 1) 元組:關(guān)系表中的每一橫行稱作一個(gè)元組,元組:關(guān)系表中的每一橫行稱作一個(gè)元組,組成元組的元素為分量。組成元組的元素為分量。2) 屬性:關(guān)系中的屬性:關(guān)系中的
4、每一列稱為一個(gè)屬性。每一列稱為一個(gè)屬性。3) 3) 候選碼、主碼候選碼、主碼:若關(guān)系中的某一屬性組(或:若關(guān)系中的某一屬性組(或單個(gè)屬性)的值能惟一地標(biāo)識一個(gè)元組,則稱單個(gè)屬性)的值能惟一地標(biāo)識一個(gè)元組,則稱該屬性組(或?qū)傩裕楹蜻x碼。若關(guān)系的候選該屬性組(或?qū)傩裕楹蜻x碼。若關(guān)系的候選碼中只包含一個(gè)屬性,則稱它為單屬性碼;若碼中只包含一個(gè)屬性,則稱它為單屬性碼;若候選碼是由多個(gè)屬性構(gòu)成的,則稱為它為多屬候選碼是由多個(gè)屬性構(gòu)成的,則稱為它為多屬性碼。當(dāng)一個(gè)關(guān)系有多個(gè)候選碼時(shí),應(yīng)選定其性碼。當(dāng)一個(gè)關(guān)系有多個(gè)候選碼時(shí),應(yīng)選定其中的一個(gè)候選碼為主碼。(如課程名,課程號中的一個(gè)候選碼為主碼。(如課程名
5、,課程號在課程表中都是候選碼)在課程表中都是候選碼)4)全碼全碼: :若關(guān)系中只有一個(gè)候選碼,且這若關(guān)系中只有一個(gè)候選碼,且這個(gè)候選碼中包括全部屬性,則這種候個(gè)候選碼中包括全部屬性,則這種候選碼為全碼。選碼為全碼。5) 主屬性和非主屬性:關(guān)系中,候選主屬性和非主屬性:關(guān)系中,候選碼中的屬性稱為主屬性,不包含在任碼中的屬性稱為主屬性,不包含在任何候選碼中的屬性稱為非主屬性。何候選碼中的屬性稱為非主屬性。 3. 數(shù)據(jù)庫中關(guān)系的類型 1) 1) 基本表:關(guān)系數(shù)據(jù)庫中實(shí)際存在的表,是基本表:關(guān)系數(shù)據(jù)庫中實(shí)際存在的表,是實(shí)際存儲(chǔ)數(shù)據(jù)的邏輯表示。實(shí)際存儲(chǔ)數(shù)據(jù)的邏輯表示。2) 2) 視圖表:視圖表是由基本表
6、或其他視圖表視圖表:視圖表是由基本表或其他視圖表導(dǎo)出的表。導(dǎo)出的表。3) 3) 查詢表:查詢表是指查詢結(jié)果表或查詢中查詢表:查詢表是指查詢結(jié)果表或查詢中生成的臨時(shí)表生成的臨時(shí)表。4. 數(shù)據(jù)庫中基本關(guān)系的性質(zhì)1) 1) 同一屬性的數(shù)據(jù)具有同質(zhì)性同一屬性的數(shù)據(jù)具有同質(zhì)性. .2) 2) 同一關(guān)系的屬性名具有不能重復(fù)性。同一關(guān)系的屬性名具有不能重復(fù)性。3) 3) 關(guān)系中的列位置具有順序無關(guān)性。關(guān)系中的列位置具有順序無關(guān)性。4) 4) 關(guān)系具有元組無冗余性。關(guān)系具有元組無冗余性。5) 5) 關(guān)系中的元組位置具有順序無關(guān)性。關(guān)系中的元組位置具有順序無關(guān)性。6) 6) 關(guān)系中每一個(gè)分量都必須是不可分的數(shù)據(jù)
7、項(xiàng)。關(guān)系中每一個(gè)分量都必須是不可分的數(shù)據(jù)項(xiàng)。5. 關(guān)系模式的定義關(guān)系模式的定義 形式化地表示為:形式化地表示為:R(U,D,Dom,F(xiàn))其中:其中:R為關(guān)系名,它是關(guān)系的形式化表示;為關(guān)系名,它是關(guān)系的形式化表示;U為組成該關(guān)系的屬性集合;為組成該關(guān)系的屬性集合;D為屬性組為屬性組U中屬性中屬性所來自的域;所來自的域;Dom為屬性向域的映象的集合;為屬性向域的映象的集合;F為屬性間數(shù)據(jù)的依賴關(guān)系集合。為屬性間數(shù)據(jù)的依賴關(guān)系集合。關(guān)系模式通??梢院唵斡洖椋宏P(guān)系模式通??梢院唵斡洖椋篟(U)或)或 R(A1,A2,An).其中:其中:R為關(guān)系名,為關(guān)系名,A1,A2,An為屬性名為屬性名。6. 關(guān)
8、系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫在某一應(yīng)用領(lǐng)域中,所有實(shí)體集及實(shí)體之在某一應(yīng)用領(lǐng)域中,所有實(shí)體集及實(shí)體之間聯(lián)系所形成關(guān)系的集合就構(gòu)成了一個(gè)關(guān)間聯(lián)系所形成關(guān)系的集合就構(gòu)成了一個(gè)關(guān)系數(shù)據(jù)庫。系數(shù)據(jù)庫。關(guān)系操作的基本內(nèi)容關(guān)系操作的基本內(nèi)容 關(guān)系操作包括數(shù)據(jù)查詢、數(shù)據(jù)維護(hù)和數(shù)據(jù)關(guān)系操作包括數(shù)據(jù)查詢、數(shù)據(jù)維護(hù)和數(shù)據(jù)控制三大功能控制三大功能. . 關(guān)系操作的數(shù)據(jù)查詢和數(shù)據(jù)維護(hù)功能使用關(guān)系操作的數(shù)據(jù)查詢和數(shù)據(jù)維護(hù)功能使用關(guān)系代數(shù)中的選擇關(guān)系代數(shù)中的選擇(Select)(Select)、投影、投影(Project)(Project)、連接(、連接(JoinJoin)、除)、除(Divide(Divide)、)、并(并(Un
9、ionUnion)、交()、交(IntersectionIntersection)、差)、差(DifferenceDifference)以及廣義笛卡兒積)以及廣義笛卡兒積( Extended Cartesian Product( Extended Cartesian Product)8 8種操作。種操作。 2. 關(guān)系操作的特點(diǎn)關(guān)系操作的特點(diǎn)(1)關(guān)系操作語言操作一體化關(guān)系操作語言操作一體化關(guān)系語言具有數(shù)據(jù)定義、查詢、更新、控制關(guān)系語言具有數(shù)據(jù)定義、查詢、更新、控制一體化的特點(diǎn)。一體化的特點(diǎn)。(2) 關(guān)系操作的方式是一次一集合方式關(guān)系操作的方式是一次一集合方式(3) 關(guān)系操作語言是高度非過程化的
10、語言關(guān)系操作語言是高度非過程化的語言3. 關(guān)系操作語言的種類關(guān)系操作語言的種類(1) 關(guān)系代數(shù)語言關(guān)系代數(shù)語言 用對關(guān)系的運(yùn)算來表達(dá)查詢要求的語言。用對關(guān)系的運(yùn)算來表達(dá)查詢要求的語言。(2) 關(guān)系演算語言關(guān)系演算語言 用查詢得到的元組應(yīng)滿足的謂詞條件來用查詢得到的元組應(yīng)滿足的謂詞條件來表達(dá)查詢要求的語言。關(guān)系演算語言又可以表達(dá)查詢要求的語言。關(guān)系演算語言又可以分為元組演算語言和域演算語言兩種:元組分為元組演算語言和域演算語言兩種:元組演算語言的謂詞變元的基本對象是元組變量,演算語言的謂詞變元的基本對象是元組變量,例如例如APLHA語言;域演算語言的謂詞變元的語言;域演算語言的謂詞變元的基本對象
11、是域變量,基本對象是域變量,QBE(Query By Example)是典型的域演算語言。)是典型的域演算語言。(3) 基于映象的語言基于映象的語言 具有關(guān)系代數(shù)和關(guān)系演算雙重特點(diǎn)的語言。具有關(guān)系代數(shù)和關(guān)系演算雙重特點(diǎn)的語言。SQL是基于映象的語言。是基于映象的語言。SQL包括數(shù)據(jù)定義、數(shù)包括數(shù)據(jù)定義、數(shù)據(jù)操作和數(shù)據(jù)控制三種功能,具有語言簡潔,易據(jù)操作和數(shù)據(jù)控制三種功能,具有語言簡潔,易學(xué)易用的特點(diǎn),它是關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)語言和主學(xué)易用的特點(diǎn),它是關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)語言和主流語言。流語言。1. 關(guān)系模型的實(shí)體完整性關(guān)系模型的實(shí)體完整性(Entity Integrity)若屬性A是基本關(guān)系R的主屬性
12、,則屬性A的值(各分量)不能為空值。說明如下:1) 實(shí)體完整性能夠保證實(shí)體的唯一性。實(shí)體完整性能夠保證實(shí)體的唯一性。2) 實(shí)體完整性能夠保證實(shí)體的可區(qū)分性。實(shí)體完整性能夠保證實(shí)體的可區(qū)分性?,F(xiàn)有如下關(guān)系現(xiàn)有如下關(guān)系S S(學(xué)號學(xué)號,姓名,性別,專業(yè)號,年齡),姓名,性別,專業(yè)號,年齡)C C(課程號課程號,課程名,學(xué)分);,課程名,學(xué)分);SCSC(學(xué)號,課程號學(xué)號,課程號,成績),成績). .現(xiàn)有用戶向數(shù)據(jù)庫中輸入如下記錄現(xiàn)有用戶向數(shù)據(jù)庫中輸入如下記錄,是否插入成功是否插入成功Insert into s(01,chen,女女,07,22) -successInsert into c(,Ins
13、ert into c(,數(shù)據(jù)庫原理及應(yīng)用數(shù)據(jù)庫原理及應(yīng)用,3),3)Insert into sc(01,68)Insert into sc(01,68)Insert into sc(02,01,90)Insert into sc(02,01,90)2. 關(guān)系模型的參照完整性關(guān)系模型的參照完整性1) 外碼和參照關(guān)系外碼和參照關(guān)系 設(shè)F是基本關(guān)系R的一個(gè)或一組屬性,但不是關(guān)系R的主碼(或候選碼)。如果F與基本關(guān)系S的主碼相對應(yīng),則稱F是R的外碼,并稱R為參照關(guān)系,S為被參照關(guān)系或目標(biāo)關(guān)系。例如,例如,“基層單位數(shù)據(jù)庫基層單位數(shù)據(jù)庫”中有中有“職工職工”和和“部門部門”兩個(gè)關(guān)系,其關(guān)系模式如下:兩個(gè)
14、關(guān)系,其關(guān)系模式如下: 職工(職工(職工號職工號,姓名,工資,性別,姓名,工資,性別,部門號部門號);); 部門(部門(部門號部門號,名稱,名稱,領(lǐng)導(dǎo)人號領(lǐng)導(dǎo)人號).其中:主碼用下劃線標(biāo)出,外碼用紅色標(biāo)出。再例,在學(xué)生課程庫中,關(guān)系模式表示為:再例,在學(xué)生課程庫中,關(guān)系模式表示為: 學(xué)生(學(xué)生(學(xué)號學(xué)號,姓名,性別,專業(yè)號,年齡);,姓名,性別,專業(yè)號,年齡); 課程(課程(課程號課程號,課程名,學(xué)分);,課程名,學(xué)分); 選修(選修(學(xué)號,課程號學(xué)號,課程號,成績),成績). .其中:主碼用下劃線標(biāo)出。2) 參照完整性規(guī)則參照完整性規(guī)則 若屬性(或?qū)傩越M)若屬性(或?qū)傩越M)F F是基本關(guān)系是
15、基本關(guān)系R R的外碼,它與的外碼,它與基本關(guān)系基本關(guān)系S S的主碼的主碼K Ks s相對應(yīng)(基本關(guān)系相對應(yīng)(基本關(guān)系R R和和S S不一定是不不一定是不同的關(guān)系),則對于同的關(guān)系),則對于R R中每個(gè)元組在中每個(gè)元組在F F上的值必須取空上的值必須取空值(值(F F的每個(gè)屬性值均為空值)或者等于的每個(gè)屬性值均為空值)或者等于S S中某個(gè)元組中某個(gè)元組的主碼值的主碼值。學(xué)生學(xué)生( (學(xué)號學(xué)號, ,姓名姓名, ,性別性別, ,專業(yè)號專業(yè)號, ,年齡年齡) )專業(yè)專業(yè)( (專業(yè)號專業(yè)號, ,專業(yè)名專業(yè)名) )學(xué)生關(guān)系中每個(gè)元組的學(xué)生關(guān)系中每個(gè)元組的”專業(yè)號專業(yè)號”屬性只能是下面的屬性只能是下面的兩類
16、型值兩類型值: :1)1)空值空值: :該學(xué)生未分配專業(yè)該學(xué)生未分配專業(yè)2)2)非空值非空值: :該值必須是專業(yè)關(guān)系中某個(gè)元組的該值必須是專業(yè)關(guān)系中某個(gè)元組的”專業(yè)專業(yè)號號”值。表示該學(xué)生分配到一個(gè)存在的專業(yè)中值。表示該學(xué)生分配到一個(gè)存在的專業(yè)中參照完整性S(S(學(xué)號學(xué)號, ,姓名姓名, ,姓名姓名, ,專業(yè)號專業(yè)號, ,年齡年齡) )C(C(課程號課程號, ,課程名課程名, ,學(xué)分學(xué)分) )SC(SC(學(xué)號學(xué)號, ,課程號課程號, ,成績成績) )INSERT INTO C(01,INSERT INTO C(01,數(shù)據(jù)庫原理數(shù)據(jù)庫原理,3) ,3) 成功成功INSERT INTO SC(01
17、,02,68) INSERT INTO SC(01,02,68) 失敗失敗INSERT INTO SC(02,01,90) INSERT INTO SC(02,01,90) 失敗失敗違背實(shí)體完整性違背實(shí)體完整性, ,沒有違背參照完整性沒有違背參照完整性INSERT INTO SC(0,68) INSERT INTO SC(0,68) 失敗失敗假設(shè)數(shù)據(jù)庫中存在關(guān)系模式:假設(shè)數(shù)據(jù)庫中存在關(guān)系模式:Employee(Employee(職工號,職工號,領(lǐng)導(dǎo)者職工號領(lǐng)導(dǎo)者職工號,姓名,姓名) )自參照完整性,自參照完整性,Insert into employee(01,01,chen) Insert i
18、nto employee(01,01,chen) insert into employee(02,01,xia)insert into employee(02,01,xia)成功成功Insert into employee(03,02,chen)Insert into employee(03,02,chen)Insert into employee(05,04,chen)Insert into employee(05,04,chen)l選修關(guān)系中成績在選修關(guān)系中成績在1100之間之間l某個(gè)屬性取值某個(gè)屬性取值(如課程名如課程名)唯一值唯一值3 用戶定義的完整性。用戶定義的完整性。 用戶定義的完
19、整性就是針對某一具體關(guān)系數(shù)據(jù)用戶定義的完整性就是針對某一具體關(guān)系數(shù)據(jù)庫的約束條件,它反映某一具體應(yīng)用所涉及的數(shù)據(jù)庫的約束條件,它反映某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿足的語義要求。必須滿足的語義要求。1) 集合運(yùn)算符:集合運(yùn)算符:(并運(yùn)算),(差運(yùn)算),(并運(yùn)算),(差運(yùn)算),(交運(yùn)算),(交運(yùn)算),(廣義笛卡兒積)。(廣義笛卡兒積)。2) 專門的關(guān)系運(yùn)算符:專門的關(guān)系運(yùn)算符:(選擇),(選擇),(投影),(投影), (連接),(連接),(除)。(除)。3) 比較運(yùn)算符:(大于),比較運(yùn)算符:(大于),(大于等于),(大于等于),(小于),(小于),(小于等于),(等于),(小于等于),(等于),
20、(不等于)。(不等于)。4) 邏輯運(yùn)算符:邏輯運(yùn)算符: (非),(非),(與),(與),(或)。(或)。 設(shè)關(guān)系設(shè)關(guān)系R R和和S S具有相同的目具有相同的目n n(即兩個(gè)關(guān)系都(即兩個(gè)關(guān)系都有有n n個(gè)屬性),且相應(yīng)的屬性取自同一個(gè)域。個(gè)屬性),且相應(yīng)的屬性取自同一個(gè)域。1. 并(并(Union)運(yùn)算)運(yùn)算 RS=t| t R t S. R R和和S S并的結(jié)果仍為并的結(jié)果仍為n n目關(guān)系,其數(shù)據(jù)由屬于目關(guān)系,其數(shù)據(jù)由屬于R R或?qū)儆诨驅(qū)儆赟 S的元組組成。的元組組成。2. 差(差(Difference)運(yùn)算)運(yùn)算 R S = t | t R t S. R R和和S S差運(yùn)算的結(jié)果關(guān)系仍為差
21、運(yùn)算的結(jié)果關(guān)系仍為n n目關(guān)系,其數(shù)目關(guān)系,其數(shù)據(jù)由屬于據(jù)由屬于R R而不屬于而不屬于S S的所有元組組成。的所有元組組成。3. 交(交(Intersection)運(yùn)算)運(yùn)算 RS = t | t R t S . 運(yùn)算的結(jié)果關(guān)系仍為運(yùn)算的結(jié)果關(guān)系仍為n n目關(guān)系,其數(shù)據(jù)由既屬于目關(guān)系,其數(shù)據(jù)由既屬于R R同時(shí)又屬于同時(shí)又屬于S S的元組組成。交可用差來表示:的元組組成。交可用差來表示: RS = R(RS) .4. 4. 笛卡兒積運(yùn)算笛卡兒積運(yùn)算 設(shè)設(shè)n n目和目和m m目的關(guān)系目的關(guān)系R R和和S S,它們的笛卡兒積是一,它們的笛卡兒積是一個(gè)(個(gè)(n+mn+m)目的元組集合。元組的前)目的元
22、組集合。元組的前n n列是關(guān)系列是關(guān)系R R的的一個(gè)元組,后一個(gè)元組,后m m列是關(guān)系列是關(guān)系S S的一個(gè)元組。若的一個(gè)元組。若R R有有k k1 1個(gè)個(gè)元組,元組,S S有有k k2 2個(gè)元組,則關(guān)系個(gè)元組,則關(guān)系R R和關(guān)系和關(guān)系S S的廣義笛卡的廣義笛卡兒積應(yīng)當(dāng)有兒積應(yīng)當(dāng)有k k1 1k k2 2個(gè)元組。個(gè)元組。R R和和S S的笛卡兒積表示的笛卡兒積表示為:為: RS = tr ts | tr R ts S . ABC ABC ABCa1b1c1a1b2c2a1b1c1a1b2c2a1b3c2a1b2c2a2b2c1 a2b2c1 a1b3c2R S RS ABC R.AR.AR.BR
23、.BR.CR.CS.AS.AS.BS.BS.CS.Ca1a1b1b1C1C1a1a1b1b1c1c1a1a1b2b2c2c2a2a2b2b2C1C1a1a1b1b1c1c1a1a1b3b3c2c2 RSRSa1a1b2b2c2c2a1a1b2b2c2c2a1a1b2b2c2c2a1a1b3b3c2c2A AB BC Ca2a2b2b2c1c1a1a1b2b2c2c2a1a1b2b2C2C2a2a2b2b2c1c1a1a1b3b3c2c2 RS RS lAB a b cdecAB d b d a a cRSRS RS1. 記號說明記號說明(1) 關(guān)系模式、關(guān)系、元組和分量關(guān)系模式、關(guān)系、元組和分
24、量 設(shè)關(guān)系模式為設(shè)關(guān)系模式為R(A1,A2,An),它的一個(gè)關(guān)),它的一個(gè)關(guān)系設(shè)為系設(shè)為R,t R表示表示t是是R的一個(gè)元組,的一個(gè)元組,t Ai則表示元?jiǎng)t表示元組組t中相對于屬性中相對于屬性Ai的一個(gè)分量。的一個(gè)分量。(2) 域列和域列非域列和域列非 若若A = A i1,A i2,A ik,其中,其中A i1,A i2,A ik是是A1,A2,An中的一部分,則中的一部分,則A稱為屬性列或稱為屬性列或域列,域列,t A = t Ai1,t A i2,t A ik 表示元組表示元組t在屬性列在屬性列A上諸分量的集合。則表示上諸分量的集合。則表示 A1,A2 , , An 中去掉中去掉 A i
25、1,A i2,A ik后剩余的屬性組,它后剩余的屬性組,它稱為稱為A的域列非的域列非 。A AAA(3) 元組連串(元組連串(Concatenation) 設(shè)設(shè)R R為為n n目關(guān)系,目關(guān)系,S S為為m m目關(guān)系,且目關(guān)系,且t tr r R R,t tS S S S,則,則t tr r t tS S 稱為元組的連串。連串是一個(gè)(稱為元組的連串。連串是一個(gè)(n+mn+m)列的元組,它的前)列的元組,它的前n n個(gè)分量是個(gè)分量是R R中的一個(gè)中的一個(gè)n n元組,后元組,后m m個(gè)分量為個(gè)分量為S S中的一個(gè)中的一個(gè)m m元元組。組。(4) 屬性的象集(屬性的象集(Images Set) 給定一
26、個(gè)關(guān)系給定一個(gè)關(guān)系R R(X X,Z Z),),X X和和Z Z為屬性組。定義當(dāng)為屬性組。定義當(dāng)t X=xt X=x時(shí),時(shí),x x在在R R中的象集為:中的象集為: Z Zx x = t Z | t = t Z | t R R,t X = x .t X = x . 上式表示,上式表示,x x在在R R中的象集為中的象集為R R中中Z Z屬性對應(yīng)分量的屬性對應(yīng)分量的集合,而這些分量所對應(yīng)的元組中的屬性組集合,而這些分量所對應(yīng)的元組中的屬性組X X上的上的值應(yīng)為值應(yīng)為x x。2. 2. 專門關(guān)系運(yùn)算的定義專門關(guān)系運(yùn)算的定義(1) 選擇(選擇(Selection)運(yùn)算)運(yùn)算選擇運(yùn)算又稱為限制運(yùn)算。選
27、擇運(yùn)算指在關(guān)系選擇運(yùn)算又稱為限制運(yùn)算。選擇運(yùn)算指在關(guān)系R R中選擇滿足給定條件的元組,記作:中選擇滿足給定條件的元組,記作: F(R)= t | t R F(t)= 真真 .其中:其中:F F表示選擇條件,是一個(gè)邏輯表達(dá)式,取表示選擇條件,是一個(gè)邏輯表達(dá)式,取值為值為“真真”或或“假假”。F F由邏輯運(yùn)算符(非)、由邏輯運(yùn)算符(非)、(與)和(與)和(或)連接各條件表達(dá)式組成。(或)連接各條件表達(dá)式組成。 條件表達(dá)式的基本形式為:條件表達(dá)式的基本形式為:X1Y1.其中:其中:是比較運(yùn)算符,它可以是、是比較運(yùn)算符,它可以是、中的一種;中的一種;X1X1和和Y1Y1是屬性名、常量或是屬性名、常量或
28、簡單函數(shù);屬性名也可以用它的序號來代替。簡單函數(shù);屬性名也可以用它的序號來代替。 選擇操作是根據(jù)某些條件對關(guān)系做水平分割,選擇操作是根據(jù)某些條件對關(guān)系做水平分割,即選取符合條件的元組即選取符合條件的元組例如,例如,23(R)表示從)表示從R中挑選第中挑選第2個(gè)分量個(gè)分量值大于值大于3的元組所構(gòu)成的關(guān)系。書寫時(shí),為的元組所構(gòu)成的關(guān)系。書寫時(shí),為了與屬性序號區(qū)別起見,了與屬性序號區(qū)別起見,常量用引號括起常量用引號括起來,而屬性序號或?qū)傩悦灰靡柪ㄆ饋?,而屬性序號或?qū)傩悦灰靡柪ㄆ饋韥?。用關(guān)系代數(shù)表示下列操作用關(guān)系代數(shù)表示下列操作 設(shè)學(xué)生課程數(shù)據(jù)庫,其關(guān)系模式為:設(shè)學(xué)生課程數(shù)據(jù)庫,其關(guān)系模式
29、為: 學(xué)生(學(xué)生,姓名,年齡,所在系);學(xué)生(學(xué)生,姓名,年齡,所在系); 課程(課程號,課程名,學(xué)分);課程(課程號,課程名,學(xué)分); 選課(學(xué)號,課程號,成績)選課(學(xué)號,課程號,成績). .【例【例4-14-1】用關(guān)系代數(shù)表示在學(xué)生課程數(shù)據(jù)庫中】用關(guān)系代數(shù)表示在學(xué)生課程數(shù)據(jù)庫中查詢計(jì)算機(jī)系的全體學(xué)生的操作。查詢計(jì)算機(jī)系的全體學(xué)生的操作。 所在系所在系= = 計(jì)算機(jī)系計(jì)算機(jī)系 (學(xué)生)(學(xué)生)【例【例4-24-2】用關(guān)系代數(shù)表示在學(xué)生課程數(shù)據(jù)庫】用關(guān)系代數(shù)表示在學(xué)生課程數(shù)據(jù)庫中查詢年齡小于中查詢年齡小于2020歲的學(xué)生的操作。歲的學(xué)生的操作。 年齡年齡2020(學(xué)生)(學(xué)生)(2) 投影投
30、影(Projection)運(yùn)算運(yùn)算這個(gè)操作是對一個(gè)關(guān)系進(jìn)行垂直分割,消去某這個(gè)操作是對一個(gè)關(guān)系進(jìn)行垂直分割,消去某些列,并重新安排列的順序。些列,并重新安排列的順序。關(guān)系關(guān)系R R上的投影是從上的投影是從R R中選擇出若干屬性列組成中選擇出若干屬性列組成新的關(guān)系,記作:新的關(guān)系,記作: A(R)= t A | t R .【例【例4-34-3】在學(xué)生課程數(shù)據(jù)庫中,查詢學(xué)生的】在學(xué)生課程數(shù)據(jù)庫中,查詢學(xué)生的姓名和所在系。姓名和所在系。表示為:表示為: 姓名,所在系姓名,所在系(學(xué)生)(學(xué)生)例如例如,3 3,1 1(R R)表示關(guān)系)表示關(guān)系R R中取第中取第1 1、3 3列,組成新列,組成新的關(guān)
31、系,新關(guān)系中第的關(guān)系,新關(guān)系中第1 1列為列為R R的第的第3 3列,新關(guān)系的第列,新關(guān)系的第2 2列為列為R R的第的第1 1列。如果列。如果R R的每列標(biāo)上屬性名,那么的每列標(biāo)上屬性名,那么操作符操作符的下標(biāo)處也可以用屬性名表示。例如,的下標(biāo)處也可以用屬性名表示。例如,關(guān)系關(guān)系R R(A A,B B,C C),那么),那么C C,A A(R R)與)與3 3,1 1(R R)是等價(jià)的。是等價(jià)的。(3) 連接運(yùn)算連接運(yùn)算連接是從兩個(gè)關(guān)系的連接是從兩個(gè)關(guān)系的笛卡兒積笛卡兒積中選取屬性間滿足中選取屬性間滿足一定條件的元組。記作:一定條件的元組。記作:R S=tr ts| trR ts S tr
32、Ats B. AB其中:其中:A A和和B B分別為分別為R R和和S S上度數(shù)相等且可比上度數(shù)相等且可比的屬性組,的屬性組,是比較運(yùn)算符是比較運(yùn)算符。等值連接表示為等值連接表示為: R S=tr ts| trR tsS tr A=ts B. A =B 說明: 1. 也可以寫成。2.24(RS)自然連接是一種特殊的等值連接自然連接是一種特殊的等值連接: R S=tr ts| trR tsS tr A=ts Al自然連接(自然連接(natural join) 兩個(gè)關(guān)系兩個(gè)關(guān)系R和和S的自然連接的自然連接 操作操作具體具體計(jì)算過程如下計(jì)算過程如下: 計(jì)算計(jì)算RS ; 設(shè)設(shè)R和和S的公共屬性是的公共
33、屬性是A1,AK,挑選,挑選RS中滿足中滿足R.A1=S.A1,R.AK=S.AK 的那些元組;的那些元組; 去掉去掉S.A1,S.AK這些列。這些列。定義:定義: 其中其中i1,im為為R和和S的全部屬性,但公共屬的全部屬性,但公共屬性只出現(xiàn)一次。性只出現(xiàn)一次。 )(.R.A.,.,ik111SRkmASASARi【例【例4-4】設(shè)學(xué)生和選課關(guān)系中的數(shù)據(jù)如下,學(xué)】設(shè)學(xué)生和選課關(guān)系中的數(shù)據(jù)如下,學(xué)生與選課之間的笛卡兒積、等值連接和自然連接生與選課之間的笛卡兒積、等值連接和自然連接的結(jié)果如表所示。的結(jié)果如表所示。 學(xué)號學(xué)號姓名姓名年年齡齡所在系所在系 學(xué)號學(xué)號課程名課程名成績成績98001張三張
34、三20計(jì)算機(jī)計(jì)算機(jī)系系98001數(shù)據(jù)庫數(shù)據(jù)庫6298005李四李四21數(shù)學(xué)數(shù)學(xué)系系98001數(shù)據(jù)結(jié)數(shù)據(jù)結(jié)構(gòu)構(gòu)73 98005微積分微積分80學(xué)生學(xué)生 選課選課 學(xué)生學(xué)生. .學(xué)學(xué)號號姓名姓名年齡年齡所在系所在系選課選課.學(xué)學(xué)號號課名課名成績成績980019800198001980019800198001980059800598005980059800598005張三張三張三張三張三張三李四李四李四李四李四李四202020202020212121212121計(jì)算機(jī)系計(jì)算機(jī)系計(jì)算機(jī)系計(jì)算機(jī)系計(jì)算機(jī)系計(jì)算機(jī)系數(shù)學(xué)系數(shù)學(xué)系數(shù)學(xué)系數(shù)學(xué)系數(shù)學(xué)系數(shù)學(xué)系9800198001980019800198005980
35、05980019800198001980019800598005數(shù)據(jù)庫數(shù)據(jù)庫數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)微積分微積分?jǐn)?shù)據(jù)庫數(shù)據(jù)庫數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)微積分微積分626273738080626273738080學(xué)生學(xué)生選課選課 學(xué)生學(xué)生.學(xué)號學(xué)號姓名姓名年齡年齡所在系所在系選課選課.學(xué)學(xué)號號課名課名成績成績980019800198005張三張三張三張三李四李四202021計(jì)算機(jī)系計(jì)算機(jī)系計(jì)算機(jī)系計(jì)算機(jī)系數(shù)學(xué)系數(shù)學(xué)系980019800198005數(shù)據(jù)庫數(shù)據(jù)庫數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)微積分微積分627380學(xué)生學(xué)生.學(xué)號學(xué)號姓名姓名年齡年齡所在系所在系課名課名成績成績980019800198005張三張三張三張三李四李四2
36、02021計(jì)算機(jī)系計(jì)算機(jī)系計(jì)算機(jī)系計(jì)算機(jī)系數(shù)學(xué)系數(shù)學(xué)系數(shù)據(jù)庫數(shù)據(jù)庫數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)微積分微積分627380學(xué)生學(xué)生 選課選課 學(xué)生.學(xué)號=選課.學(xué)號 學(xué)生學(xué)生 選課選課 ABCA1A1A2A2B1B2B3B456812BEB1B2B3B3B5371022關(guān)系關(guān)系R關(guān)系關(guān)系SAR.BCS.BEA1A1A1A1A2B1 B1 B2 B2 B355668B2 B3 B2 B3 B37 10 7 10 10一般連接一般連接 R SCEA B C EA1A1A2A2B1B2B3B3568837102自然連接自然連接 R SABCA1A1A2A2B1B2B3B456812BB1B2B3B3B5關(guān)系關(guān)系R關(guān)系關(guān)系Sl兩個(gè)關(guān)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 不打死結(jié)的紅領(lǐng)巾系法
- 【語文課件】再見了親人 浙江教育出版社課件
- 單位人力資源管理制度收錄匯編十篇
- 單位人力資源管理制度集合合集十篇
- 單位管理制度展示合集職工管理篇
- 傳媒行業(yè)“AI、出海、IP”為舵乘風(fēng)破浪
- 2025年互聯(lián)網(wǎng)券商行業(yè)市場趨勢分析報(bào)告
- 單位管理制度展示大合集人員管理篇
- 2022-2027年中國超聲波霧化器行業(yè)市場全景評估及發(fā)展戰(zhàn)略研究報(bào)告
- 生物燃料油生產(chǎn)建設(shè)啊項(xiàng)目節(jié)能評估報(bào)告(節(jié)能專)
- 財(cái)務(wù)負(fù)責(zé)人統(tǒng)一委派制度
- 瀝青路面施工監(jiān)理工作細(xì)則
- 物業(yè)設(shè)備設(shè)施系統(tǒng)介紹(詳細(xì)).ppt
- 公司走賬合同范本
- 獲獎(jiǎng)一等獎(jiǎng)QC課題PPT課件
- 市場調(diào)查的產(chǎn)生與發(fā)展
- 人教版小學(xué)三年級數(shù)學(xué)上冊判斷題(共3頁)
- 國際項(xiàng)目管理手冊The Project Manager’s Manual
- 小學(xué)五年級思政課教案三篇
- 華為內(nèi)部虛擬股管理暫行條例
- 大劇院建設(shè)項(xiàng)目設(shè)計(jì)投資造價(jià)估算
評論
0/150
提交評論