數(shù)據(jù)庫技術(shù)及應(yīng)用-關(guān)系模型_第1頁
數(shù)據(jù)庫技術(shù)及應(yīng)用-關(guān)系模型_第2頁
數(shù)據(jù)庫技術(shù)及應(yīng)用-關(guān)系模型_第3頁
數(shù)據(jù)庫技術(shù)及應(yīng)用-關(guān)系模型_第4頁
數(shù)據(jù)庫技術(shù)及應(yīng)用-關(guān)系模型_第5頁
已閱讀5頁,還剩56頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

數(shù)據(jù)庫技術(shù)與應(yīng)用關(guān)系模型2023/6/151目錄2023/6/1523.1關(guān)系模型的由來3.2關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)3.3關(guān)系代數(shù)3.4關(guān)系演算3.5關(guān)系代數(shù)表達(dá)式的優(yōu)化3.1關(guān)系模型的由來2023/6/1531970年,IBM的研究員E.F.Codd博士在刊物《CommunicationoftheACM》上發(fā)表了一篇名為“ARelationalModelofDataforLargeSharedDataBanks”的論文,提出了關(guān)系模型的概念,奠定了關(guān)系模型的理論基礎(chǔ)。關(guān)系模型是以集合論中的關(guān)系概念為基礎(chǔ)發(fā)展起來的,具有嚴(yán)格的數(shù)學(xué)基礎(chǔ)和較高的抽象級(jí)別。在關(guān)系模型中,無論是實(shí)體還是實(shí)體間的聯(lián)系均由單一的結(jié)構(gòu)類型——關(guān)系(也稱為表)來表示。其結(jié)構(gòu)簡單清晰,便于理解和使用。3.2關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)2023/6/1543.2.1關(guān)系模型的基本術(shù)語關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)的邏輯形式是一張二維表,這個(gè)二維表就叫做關(guān)系。

3.1表CUSTOMERS表cidcnamecitydiscntc001TipTopDuluth10.00c002BasicsDallas12.00c003AlliedDallas8.00c004ACMEDuluth8.00c006ACMETokyo0.00c007WindixDallasNULL關(guān)系(Relation):一個(gè)關(guān)系就是一張二維表。元組(Tuple):表中的一行就是一個(gè)元組。屬性(Attribute):表中的一列就是一個(gè)屬性,每個(gè)屬性有一個(gè)屬性名。值域(Domain):關(guān)系中的每個(gè)屬性都有一個(gè)取值范圍,這個(gè)取值范圍稱為屬性的值域,屬性A的值域表示為DOM(A)。3.2關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)2023/6/1553.2.1關(guān)系模型的基本術(shù)語3.1表CUSTOMERS表cidcnamecitydiscntc001TipTopDuluth10.00c002BasicsDallas12.00c003AlliedDallas8.00c004ACMEDuluth8.00c006ACMETokyo0.00c007WindixDallasNULL分量:元組的某一個(gè)屬性值就是一個(gè)分量。關(guān)系模式(RelationSchema):是對(duì)關(guān)系的結(jié)構(gòu)性描述,表示為:關(guān)系名(屬性1,屬性2,…,屬性n),例Customers的關(guān)系模式為Customers(cid,cname,city,discnt)。表的內(nèi)容(theContentofTable):指表的元組的集合。3.2關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)2023/6/1563.2.1關(guān)系模型的基本術(shù)語3.1表CUSTOMERS表cidcnamecitydiscntc001TipTopDuluth10.00c002BasicsDallas12.00c003AlliedDallas8.00c004ACMEDuluth8.00c006ACMETokyo0.00c007WindixDallasNULL基數(shù)(Cardinality):關(guān)系中元組的個(gè)數(shù)叫做基數(shù)。元數(shù)(Arity):關(guān)系中屬性的個(gè)數(shù)叫做元數(shù)。關(guān)系數(shù)據(jù)庫:是表或者是關(guān)系的集合。Sales={Customers,Agents,Products,Orders}??罩?NULL):空值是指未知的或者尚未定義的屬性值。3.2關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)2023/6/1573.2.2關(guān)系的鍵

超鍵(SuperKey):在一個(gè)關(guān)系中,若某一個(gè)屬性或?qū)傩约系闹悼晌ㄒ坏貥?biāo)識(shí)元組,則稱該屬性或?qū)傩约蠟樵撽P(guān)系的超鍵。候選鍵(CandidateKey):如果一個(gè)屬性或?qū)傩约系闹的芪ㄒ粯?biāo)識(shí)一個(gè)關(guān)系的元組而又不含有多余的屬性,則稱該屬性或?qū)傩约蠟樵撽P(guān)系的候選鍵。如果關(guān)系的全部屬性構(gòu)成關(guān)系的候選鍵,則稱為全鍵(All-Key)。構(gòu)成候選鍵的諸屬性稱為主屬性(PrimeAttribute)。不包含在任意候選鍵中的屬性稱為非主屬性(Non-PrimeAttribute)。3.2關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)2023/6/1583.2.2關(guān)系的鍵

主鍵(PrimaryKey):有時(shí)一個(gè)關(guān)系中有多個(gè)侯選鍵,此時(shí)可以選擇一個(gè)作為插入,刪除或檢索元組的操作變量。被選用的候選鍵稱為主鍵。外鍵(ForeignKey):是指關(guān)系R中的屬性A不是關(guān)系R的主鍵,但A是另一個(gè)關(guān)系S的主鍵,則屬性A就是關(guān)系R的外鍵。其中R是參照關(guān)系,S是被參照關(guān)系。外鍵在關(guān)系R中的取值有兩種可能:或?yàn)榭罩?,或必須是被參照關(guān)系S中已有的屬性值。外鍵值是否允許為空值,主要依賴于應(yīng)用環(huán)境的語義。3.2關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)2023/6/1593.2.2關(guān)系的鍵

【例3.1】在高校學(xué)生管理系統(tǒng)中,其數(shù)據(jù)庫包含學(xué)生表、學(xué)院表、課程表、選課表等關(guān)系。其關(guān)系模式為:學(xué)生(學(xué)號(hào),姓名,性別,出生年月,學(xué)院號(hào),入學(xué)時(shí)間,身份證號(hào))學(xué)院(學(xué)院號(hào),學(xué)院名稱,院長)課程(課程號(hào),課程名,類型,學(xué)分,學(xué)時(shí))學(xué)生選課(學(xué)號(hào),課程號(hào))分析各表的主鍵、外鍵、超鍵和候選鍵。3.2關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)2023/6/15103.2.3基于集合論的關(guān)系定義定義3.5:給定一組集合,,…,這些集合可以相同,也可以不同。笛卡爾乘積的運(yùn)算符號(hào)為×,定義,,…,的笛卡爾乘積(CartesianProduct)為:××…×={(,,…,)|∈,i=l,2,…,n},其中的每一個(gè)元素(,,…,)叫做一個(gè)n元組(n-tuple),元素中第i個(gè)值叫做第i個(gè)分量。3.2關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)2023/6/15113.2.2關(guān)系的鍵

【例3.2】給出三個(gè)域:

=Student={張三,劉四} =Sexchar={男,女} =College={軟件學(xué)院,數(shù)理學(xué)院,機(jī)械工程學(xué)院}StudentSexcharCollege張三男軟件學(xué)院張三男數(shù)理學(xué)院張三男機(jī)械工程學(xué)院張三女軟件學(xué)院張三女?dāng)?shù)理學(xué)院張三女機(jī)械工程學(xué)院劉四男軟件學(xué)院劉四男數(shù)理學(xué)院劉四男機(jī)械工程學(xué)院劉四女軟件學(xué)院劉四女?dāng)?shù)理學(xué)院劉四女機(jī)械工程學(xué)院表3.6××的笛卡爾積3.2關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)2023/6/15123.2.3基于集合論的關(guān)系定義定義3.6笛卡爾乘積××…×的任一個(gè)子集稱為,,…,上的一個(gè)關(guān)系。集合,,…,是關(guān)系中元組的取值范圍,稱為關(guān)系的域(Domain),n稱為關(guān)系的目或度(Degree)。度為n的關(guān)系稱為n元關(guān)系,如n=1的關(guān)系稱一元關(guān)系,n=2的關(guān)系稱二元關(guān)系?!纠?.3】在表的笛卡爾積中取出有實(shí)際意義的元組來構(gòu)造一個(gè)關(guān)系:SSC(Student,Sexchar,College)表3.7關(guān)系SSCStudentSexcharCollege張三男軟件學(xué)院劉四女?dāng)?shù)理學(xué)院3.2關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)2023/6/15133.2.4關(guān)系規(guī)則定義3.7第一范式(FirstNormalForm,1NF):是指關(guān)系數(shù)據(jù)庫中表的每一列都是不可分割的基本數(shù)據(jù)項(xiàng),同一列中不能有多個(gè)值,即關(guān)系模型不允許含有多值屬性,并且屬性的類型必須是簡單類型。表3.8學(xué)生信息(非關(guān)系表)學(xué)號(hào)姓名性別出生年月家庭住址家庭成員省城市街道20100001王丹女1992.3.4四川成都人民路30號(hào)王一升張梅20100002章華男1992.6.12重慶重慶沙中路22號(hào)章中新劉西章柏……3.2關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)2023/6/15143.2.4關(guān)系規(guī)則表3.9學(xué)生關(guān)系表學(xué)號(hào)姓名性別出生年月省城市街道20100001王丹女1992.3.4四川成都人民路30號(hào)20100002章華男1992.6.12重慶重慶沙中路22號(hào)……表3.10家庭成員關(guān)系表學(xué)號(hào)家庭成員20100001王一升20100001張梅20100002章中新20100002劉西20100002章柏……3.2關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)2023/6/15153.2.4關(guān)系規(guī)則定義3.8實(shí)體完整性規(guī)則:定義關(guān)系中主鍵的取值不能為空值。所謂空值NULL就是未知的或無意義的值?!纠?.5】在例3.1的學(xué)生關(guān)系(學(xué)號(hào),姓名,性別,出生年月,學(xué)院號(hào),入學(xué)時(shí)間,身份證號(hào))中,“學(xué)號(hào)”為主鍵,則任一個(gè)學(xué)生的學(xué)號(hào)值不能為空值。3.2關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)2023/6/15163.2.4關(guān)系規(guī)則定義3.9參照完整性規(guī)則:若屬性或?qū)傩越MF是關(guān)系R的外鍵,它與關(guān)系S的主鍵Ks相對(duì)應(yīng),則對(duì)于R中每個(gè)元組在F上的值必須取空值;或者等于S中某個(gè)元組的主鍵值。關(guān)系R和S既可以是不同的關(guān)系,也可以是相同的關(guān)系。F是否能為空值,主要依賴于應(yīng)用的環(huán)境。

【例3.6】有兩個(gè)關(guān)系表:部門(部門編碼,部門名稱,電話,辦公地址)職工(職工編碼,姓名,性別,年齡,籍貫,部門編碼)3.2關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)2023/6/15173.2.4關(guān)系規(guī)則定義3.10用戶定義的完整性規(guī)則:就是針對(duì)某一具體關(guān)系數(shù)據(jù)庫的約束條件,反映某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿足的語義要求。【例3.7】在例3.1的學(xué)生關(guān)系(學(xué)號(hào),姓名,性別,出生年月,學(xué)院號(hào),入學(xué)時(shí)間,身份證號(hào))中,屬性(性別)的取值只能是“男”或“女”。這可以采用用戶定義的完整性規(guī)則來定義保證。3.2關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)2023/6/15183.2.4關(guān)系規(guī)則表中同一屬性的數(shù)據(jù)具有同質(zhì)性,即同一列中的分量是同一類型的數(shù)據(jù),來自同一個(gè)域?!纠?.8】在學(xué)生選課表(學(xué)號(hào),課程號(hào),成績)中,屬性“成績”的值必須是同一類型的數(shù)據(jù),統(tǒng)一語義。同一關(guān)系的屬性名具有不能重復(fù)性,即不同的屬性要定義不同的屬性名,同一關(guān)系中不同屬性的數(shù)據(jù)可出自同一個(gè)域?!纠?.9】設(shè)計(jì)一個(gè)能存儲(chǔ)兩科成績的學(xué)生成績表,其表模式不能為學(xué)生成績(學(xué)號(hào),成績,成績),可以設(shè)計(jì)為學(xué)生成績(學(xué)號(hào),成績1,成績2)。3.2關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)2023/6/15193.2.4關(guān)系規(guī)則關(guān)系中的元組位置具有順序無關(guān)性,即關(guān)系元組的順序可以任意交換。關(guān)系中的列位置具有順序無關(guān)性,即關(guān)系中的屬性順序不影響使用,屬性的次序可以任意交換。3.2關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)2023/6/15203.2.4關(guān)系操作常用的關(guān)系操作包括:查詢操作:包括選擇(Select)、投影(Project)、連接(Join)、除(Division)、并(Union)、交(Intersection)、差(Difference)等操作。更新操作:包括增加(Insert)、刪除(Delete)、修改(Update)等操作。3.2關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)2023/6/15213.2.4關(guān)系操作關(guān)系操作的表示方式主要有三種:關(guān)系代數(shù):是一種抽象的查詢語言,用代數(shù)運(yùn)算來表達(dá)關(guān)系的查詢要求和條件。關(guān)系演算:關(guān)系演算也是一種抽象的查詢語言,用謂詞來表達(dá)關(guān)系的查詢要求和條件。結(jié)構(gòu)化查詢語言(StructureQueryLanguage,SQL):SQL兼用關(guān)系代數(shù)和關(guān)系演算來表達(dá)關(guān)系的查詢要求和條件,是一種數(shù)據(jù)庫查詢和程序設(shè)計(jì)語言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫系統(tǒng)。3.3關(guān)系代數(shù)2023/6/15223.3.1關(guān)系代數(shù)分類關(guān)系代數(shù)中的運(yùn)算可分為兩類:傳統(tǒng)的集合運(yùn)算(如表3.11):包括并、交、差、廣義笛卡爾積。自然關(guān)系運(yùn)算(如表3.12):包括投影、選擇、連接、除法。表3.11傳統(tǒng)的集合運(yùn)算名稱符號(hào)示例并∪R∪S交∩R∩S差-R-S廣義笛卡爾積×R×S3.3關(guān)系代數(shù)2023/6/15233.3.1關(guān)系代數(shù)分類關(guān)系代數(shù)中的運(yùn)算可分為兩類:傳統(tǒng)的集合運(yùn)算(如表3.11):包括并、交、差、廣義笛卡爾積。自然關(guān)系運(yùn)算(如表3.12):包括投影、選擇、連接、除法。表3.12自然關(guān)系運(yùn)算名稱符號(hào)示例投影πA(R)π3,1(R)選擇連接∞R∞S除法÷R÷S3.3關(guān)系代數(shù)2023/6/15243.3.2傳統(tǒng)的集合運(yùn)算并運(yùn)算(Union)定義3.12兩個(gè)相容的關(guān)系R和S的并是由屬于R或?qū)儆赟的所有元組構(gòu)成的一個(gè)新關(guān)系,記為:R∪S={t|t∈R∨t∈S},t是元組變量。差運(yùn)算(Difference)定義3.13兩個(gè)相容的關(guān)系R和S的差是由屬于R但不屬于S的元組構(gòu)成的一個(gè)新關(guān)系,記為:R-S=,t是元組變量。3.3關(guān)系代數(shù)2023/6/15253.3.2傳統(tǒng)的集合運(yùn)算交運(yùn)算(Intersection)定義3.14兩個(gè)相容的關(guān)系R和S的交是由屬于R同時(shí)也屬于S的元組構(gòu)成的一個(gè)新關(guān)系,記為:R∩S={t|t∈R∧t∈S},t是元組變量。圖3.1文氏圖表示的并、交、差運(yùn)算從圖3.1中,可以得到:R∩S=R-(R-S)或R∩S=S-(S-R)3.3關(guān)系代數(shù)2023/6/15263.3.2傳統(tǒng)的集合運(yùn)算廣義笛卡爾積(ExtendedCartesianProduct)定義3.15廣義笛卡爾積是指關(guān)系的乘法。設(shè)R為m元關(guān)系,S為n元關(guān)系,則R與S的廣義笛卡爾積R×S是一個(gè)(m+n)元關(guān)系,其中的每個(gè)元組的前m個(gè)分量是R中的一個(gè)元組,后n個(gè)分量是S中的一個(gè)元組。若R有個(gè)元組,S有個(gè)元組,則R×S有(×)個(gè)元組,即廣義笛卡爾積:3.3關(guān)系代數(shù)2023/6/15273.3.2傳統(tǒng)的集合運(yùn)算【例3.11】R和S分別是具有三個(gè)屬性列的關(guān)系,見圖3.2(a)和(b),求關(guān)系R和S的并、交、差和廣義笛卡爾積。(a)關(guān)系R(b)關(guān)系S

(c)R∪S

(d)R∩S

(e)R-S

(f)R×S3.3關(guān)系代數(shù)2023/6/15283.3.3自然關(guān)系運(yùn)算選擇運(yùn)算(Select)定義3.16選擇是指從關(guān)系R中選取滿足給定條件的元組構(gòu)成一個(gè)新的關(guān)系。選擇運(yùn)算記作:表示滿足條件之一即為真,表示要同時(shí)滿足兩個(gè)條件,表示不滿足條件即為真。3.3關(guān)系代數(shù)2023/6/15293.3.3自然關(guān)系運(yùn)算【例3.12】數(shù)據(jù)庫SALES包含四個(gè)關(guān)系:表3.13AGENTSaidanamecitypercenta01SmithNewYork6a02JonesNewark6a03BrownTokyo7a04GrayNewYork6a05OtasiDuluth5a06SmithDallas5表3.14CUSTOMERScidcnamecitydiscntc001TipTopDuluth10.00c002BasicsDallas12.00c003AlliedDallas8.00c004ACMEDuluth8.00c006ACMETokyo0.00表3.15PRODUCTSpidpnamecityquantitypricep01combDallas1114000.50p02brushNewark2030000.50p03razorDuluth1506001.00p04penDuluth1253001.00p05pencilDallas2214001.00p06folderDallas1231002.00p07caseNewark1005001.003.3關(guān)系代數(shù)2023/6/15303.3.3自然關(guān)系運(yùn)算【例3.12】數(shù)據(jù)庫SALES包含四個(gè)關(guān)系:表3.16ORDERS

ordnomonthcidaidpidqtydollars1011janc001a01p011000450.001012janc001a01p011000450.001013janc002a03p031000880.001017febc001a06p03600540.001018febc001a03p04600540.001019febc001a02p02400180.001022marc001a05p06400720.001023marc001a04p05500450.001025aprc001a05p07800720.001026marc002a05p03800704.003.3關(guān)系代數(shù)2023/6/15313.3.3自然關(guān)系運(yùn)算查詢編號(hào)為c002的顧客的信息。cidcnamecitydiscntc002BasicsDallas12.00表3.17查詢結(jié)果表3.3關(guān)系代數(shù)2023/6/15323.3.3自然關(guān)系運(yùn)算查詢編號(hào)為c001的顧客通過代理商a01訂購的信息。

ordnomonthcidaidpidqtydollars1011janc001a01p011000450.001012janc001a01p011000450.00表3.19查詢結(jié)果表3.3關(guān)系代數(shù)2023/6/15333.3.3自然關(guān)系運(yùn)算投影運(yùn)算(Projection)定義3.17投影是指從一個(gè)關(guān)系R中選取所需要的列組成一個(gè)新關(guān)系,投影運(yùn)算記為:或者3.3關(guān)系代數(shù)2023/6/15343.3.3自然關(guān)系運(yùn)算查詢PRODUCTS關(guān)系中產(chǎn)品的編號(hào)和庫存城市。表3.21查詢結(jié)果表pidcityp01Dallasp02Newarkp03Duluthp04Duluthp05Dallasp06Dallasp07Newark3.3關(guān)系代數(shù)2023/6/15353.3.3自然關(guān)系運(yùn)算連接運(yùn)算(Join)

連接是指從二個(gè)關(guān)系的廣義笛卡爾積中選取滿足一定連接條件的元組,也叫θ連接,記為:

3.3關(guān)系代數(shù)2023/6/15363.3.3自然關(guān)系運(yùn)算連接運(yùn)算等值連接(Equi-Join)等值連接是θ為=時(shí)的情況,它是從關(guān)系R與S的笛卡爾積中選取A屬性值和B屬性值相等的那些元組。記作:自然連接(NaturalJoin)自然連接是指兩個(gè)關(guān)系進(jìn)行連接比較的屬性列完全相同的等值連接,且結(jié)果關(guān)系中沒有重復(fù)的屬性。3.3關(guān)系代數(shù)2023/6/15373.3.3自然關(guān)系運(yùn)算【例3.14】設(shè)圖3.3(a)和圖3.3(b)分別是關(guān)系R和關(guān)系S,求兩個(gè)關(guān)系的、等值連接、自然連接。關(guān)系R關(guān)系S3.3關(guān)系代數(shù)2023/6/15383.3.3自然關(guān)系運(yùn)算【例3.16】查詢所有訂購商品P05的顧客的姓名。第一步:第二步:最后一步:3.3關(guān)系代數(shù)2023/6/15393.3.3自然關(guān)系運(yùn)算除法運(yùn)算(Division)定義3.18給定一個(gè)關(guān)系R(X,Z),X和Z為屬性組。當(dāng)t[X]=x時(shí),x在R中的像集定義為:它表示R中屬性組X上值為x的諸元組在Z上分量的集合。定義3.19設(shè)關(guān)系R和S的度數(shù)分別為n和m(n>m>0),那么R÷S是一個(gè)度數(shù)為(n-m)的關(guān)系,它滿足下列條件:R÷S中的每個(gè)元組t與S中每個(gè)元組u所組成的元組(t,u)必在關(guān)系R中。3.3關(guān)系代數(shù)2023/6/15403.3.3自然關(guān)系運(yùn)算除法運(yùn)算(Division)定義3.20給定關(guān)系R(X,Y)和S(Y),其中X,Y為屬性組。R中的Y與S中的Y可以有不同的屬性名,但必須出自相同的域集。R與S的除運(yùn)算得到一個(gè)新的關(guān)系P(X),P是R中滿足下列條件的元組在X屬性組上的投影:元組在X上分量值x的像集Yx包含S在Y上投影的集合。記作:其中是x在R中的像集,x=t[X]3.3關(guān)系代數(shù)2023/6/15413.3.3自然關(guān)系運(yùn)算【例3.17】設(shè)關(guān)系R,S分別如圖3.4(a)(b)所示,求R÷S?在關(guān)系R中,元組在A上的分量值可以取4個(gè)值。的像集為:的像集為:的像集為:的像集為:S在(B,C)上的投影為:因?yàn)橹挥械南窦琒在(B,C)上的投影,所以R÷S

={}。3.3關(guān)系代數(shù)2023/6/15423.3.3自然關(guān)系運(yùn)算【例3.19】查詢訂購了顧客c002訂購的所有商品的顧客編號(hào)。查詢顧客訂購商品的顧客編號(hào)和產(chǎn)品編號(hào)。查詢顧客c002訂購的所有商品的產(chǎn)品編號(hào)。根據(jù)兩個(gè)關(guān)系的除法定義,查詢訂購了顧客c002訂購的所有商品的顧客編號(hào)。R÷S=3.3關(guān)系代數(shù)2023/6/15433.3.4關(guān)系代數(shù)綜合實(shí)例

關(guān)系代數(shù)的優(yōu)先級(jí)優(yōu)先級(jí)關(guān)系代數(shù)運(yùn)算符號(hào)高低投影選擇笛卡爾積×連接、除法,÷交∩并、差∪,-3.3關(guān)系代數(shù)2023/6/15443.3.4關(guān)系代數(shù)綜合實(shí)例

【例3.20】求下面查詢需求的關(guān)系代數(shù)表達(dá)式。查詢所有訂購了至少一個(gè)價(jià)值為1元的商品的顧客的姓名。A=B=C=D=Orders3.3關(guān)系代數(shù)2023/6/15453.3.4關(guān)系代數(shù)綜合實(shí)例

【例3.20】求下面查詢需求的關(guān)系代數(shù)表達(dá)式。查詢既訂購了產(chǎn)品P01也訂購了產(chǎn)品P03的顧客編號(hào)。A=B=A∩B=3.3關(guān)系代數(shù)2023/6/15463.3.4關(guān)系代數(shù)綜合實(shí)例

【例3.20】求下面查詢需求的關(guān)系代數(shù)表達(dá)式。檢索訂購了所有產(chǎn)品的顧客的編號(hào)和姓名。

A=B=C=A÷B=D=3.3關(guān)系代數(shù)2023/6/15473.3.5擴(kuò)展的關(guān)系代數(shù)運(yùn)算

外連接是自然連接的擴(kuò)展,也可以說是自然連接的特例,可以處理缺失的信息。外連接運(yùn)算有三種:左外連接、右外連接和全外連接

名稱符號(hào)鍵盤格式示例外連接OUTERJRS或

ROUTERJS左外連接LOUTERJRS或

RLOUTERJS右外連接ROUTERJRS或

RROUTERJS3.3關(guān)系代數(shù)2023/6/15483.3.5擴(kuò)展的關(guān)系代數(shù)運(yùn)算

左外連接(LeftOuterJoin)左外連接=內(nèi)連接+左邊表中失配的元組其中,缺少的右邊表中的屬性值用NULL表示。右外連接(RightOuterJoin)右外連接=內(nèi)連接+右邊表中失配的元組其中,缺少的左邊表中的屬性值用NULL表示。全外連接(FullOuterJoin)全外連接=內(nèi)連接+左邊表中失配的元組+右邊表中失配的元組。其中,缺少的左邊表或者右邊表中的屬性值用NULL表示。3.3關(guān)系代數(shù)2023/6/15493.3.5擴(kuò)展的關(guān)系代數(shù)運(yùn)算

【例3.21】設(shè)兩個(gè)關(guān)系模式R和S(如表3.38所示),求關(guān)系R和S的自然連接、左外連接、右外連接和全外連接。表3.38關(guān)系R和SR關(guān)系S關(guān)系A(chǔ)1A2A3A1A2A4abcazabadbahcddcdddfgdsc表3.39關(guān)系R和S自然連接的結(jié)果表A1A2A3A4badhcddd表3.40R與S左外連接的結(jié)果表A1A2A3A4abcnullbadhcddddfgnull3.3關(guān)系代數(shù)2023/6/15503.3.5擴(kuò)展的關(guān)系代數(shù)運(yùn)算

【例3.21】設(shè)兩個(gè)關(guān)系模式R和S(如表3.38所示),求關(guān)系R和S的自然連接、左外連接、右外連接和全外連接。表3.38關(guān)系R和SR關(guān)系S關(guān)系A(chǔ)1A2A3A1A2A4abcazabadbahcddcdddfgdsc表3.41R與S右外連接的結(jié)果表A1A2A3A4aznullabadhcddddsnullc表3.42R與S完全外連接的結(jié)果表A1A2A3A4abcnullbadhcddddfgnullaznulladsnullc3.4關(guān)系演算2023/6/15513.4.1元組關(guān)系演算根據(jù)謂詞變量對(duì)象的不同,可分為元組關(guān)系演算和域關(guān)系演算。元組關(guān)系演算是用元組集表示關(guān)系運(yùn)算的結(jié)果,表達(dá)式的一般形式為{t|P(t)},它是使P(t)為真的所有元組t構(gòu)成的集合。其中,t是元組變量,P(t)是公式,它由原子

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論