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

下載本文檔

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

文檔簡(jiǎn)介

1、An Introduction to Database System,2.3 關(guān)系代數(shù),概述 傳統(tǒng)的集合運(yùn)算 專門的關(guān)系運(yùn)算,An Introduction to Database System,概述,1. 關(guān)系代數(shù) 2. 運(yùn)算的三要素 3. 關(guān)系代數(shù)運(yùn)算的三個(gè)要素 4. 關(guān)系代數(shù)運(yùn)算的分類 5. 表示記號(hào),An Introduction to Database System,概述,1.關(guān)系代數(shù) 一種抽象的查詢語言 通過對(duì)關(guān)系的運(yùn)算來表達(dá)查詢,An Introduction to Database System,概述(續(xù)),2關(guān)系代數(shù)運(yùn)算的三個(gè)要素 運(yùn)算對(duì)象:關(guān)系 運(yùn)算結(jié)果:關(guān)系 運(yùn)算符:四類

2、,An Introduction to Database System,概述(續(xù)),集合運(yùn)算符 將關(guān)系看成元組的集合 運(yùn)算是從關(guān)系的“水平”方向即行的角度來進(jìn)行 專門的關(guān)系運(yùn)算符 不僅涉及行而且涉及列 算術(shù)比較符 輔助專門的關(guān)系運(yùn)算符進(jìn)行操作 邏輯運(yùn)算符 輔助專門的關(guān)系運(yùn)算符進(jìn)行操作,An Introduction to Database System,表1 關(guān)系代數(shù)運(yùn)算符,概述(續(xù)),An Introduction to Database System,表21 關(guān)系代數(shù)運(yùn)算符(續(xù)),概述(續(xù)),An Introduction to Database System,概述(續(xù)),4關(guān)系代數(shù)運(yùn)算的

3、分類 傳統(tǒng)的集合運(yùn)算 并、差、交、廣義笛卡爾積 專門的關(guān)系運(yùn)算 選擇、投影、連接、除,An Introduction to Database System,概述(續(xù)),5表示記號(hào) (1) R,tR,tAi 設(shè)關(guān)系模式為R(A1,A2,An) 它的一個(gè)關(guān)系設(shè)為R。tR表示t是R的一個(gè)元組 tAi則表示元組t中相應(yīng)于屬性Ai的一個(gè)分量,An Introduction to Database System,概述(續(xù)),(2) A,tA, A 若A=Ai1,Ai2,Aik,其中Ai1,Ai2,Aik是A1,A2,An中的一部分,則A稱為屬性列或域列。tA=(tAi1,tAi2,tAik)表示元組t在屬

4、性列A上諸分量的集合。A則表示A1,A2,An中去掉Ai1,Ai2,Aik后剩余的屬性組。,An Introduction to Database System,概述(續(xù)),(3) tr ts R為n目關(guān)系,S為m目關(guān)系。tr R,tsS, tr ts稱為元組的連接。它是一個(gè)n + m列的元組,前n個(gè)分量為R中的一個(gè)n元組,后m個(gè)分量為S中的一個(gè)m元組。,An Introduction to Database System,2.3.1 傳統(tǒng)的集合運(yùn)算,并 差 交 廣義笛卡爾積,An Introduction to Database System,1. 并(Union),R和S 具有相同的目n(

5、即兩個(gè)關(guān)系都有n個(gè)屬性) 相應(yīng)的屬性取自同一個(gè)域 RS 仍為n目關(guān)系,由屬于R或?qū)儆赟的元組組成 RS = t|t Rt S ,An Introduction to Database System,并(續(xù)),R,S,RS,An Introduction to Database System,2. 差(Difference),R和S 具有相同的目n 相應(yīng)的屬性取自同一個(gè)域 R - S 仍為n目關(guān)系,由屬于R而不屬于S的所有元組組成 R -S = t|tRtS ,An Introduction to Database System,差(續(xù)),R,S,R-S,An Introduction to D

6、atabase System,3. 交(Intersection),R和S 具有相同的目n 相應(yīng)的屬性取自同一個(gè)域 RS 仍為n目關(guān)系,由既屬于R又屬于S的元組組成 RS = t|t Rt S RS = R -(R-S),An Introduction to Database System,交 (續(xù)),R,S,R S,An Introduction to Database System,4. 廣義笛卡爾積(Extended Cartesian Product),R n目關(guān)系,k1個(gè)元組 S m目關(guān)系,k2個(gè)元組 RS 列:(n+m)列的元組的集合 元組的前n列是關(guān)系R的一個(gè)元組 后m列是關(guān)系S

7、的一個(gè)元組 行:k1k2個(gè)元組 RS = tr ts |tr R tsS ,An Introduction to Database System,廣義笛卡爾積 (續(xù)),R,S,R S,An Introduction to Database System,2.3.2 專門的關(guān)系運(yùn)算,選擇 投影 連接 除,An Introduction to Database System,1. 選擇(Selection),1) 選擇又稱為限制(Restriction) 2) 選擇運(yùn)算符的含義 在關(guān)系R中選擇滿足給定條件的諸元組 F(R) = t|tRF(t)= 真 F:選擇條件,是一個(gè)邏輯表達(dá)式,基本形式為:

8、( X1Y1 ) ( X2Y2 ) :比較運(yùn)算符(,或) X1,Y1等:屬性名、常量、簡(jiǎn)單函數(shù);屬性名也可以用它的序號(hào)來代替; :邏輯運(yùn)算符(或) :表示任選項(xiàng) :表示上述格式可以重復(fù)下去,An Introduction to Database System,選擇(續(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。,An Introduction to Database System,選擇(續(xù)),(a),Student,例1,例2,例4,例3,例9,An Introduction to Databa

9、se System,選擇(續(xù)),(b),Course,例9,An Introduction to Database System,選擇(續(xù)),(c),SC,例7,例9,An Introduction to Database System,選擇(續(xù)),例1 查詢信息系(IS系)全體學(xué)生 Sdept = IS (Student) 或 5 =IS (Student) 結(jié)果:,An Introduction to Database System,選擇(續(xù)),例2 查詢年齡小于20歲的學(xué)生 Sage 20(Student) 或 4 20(Student) 結(jié)果:,An Introduction to D

10、atabase System,2. 投影(Projection),1)投影運(yùn)算符的含義 從R中選擇出若干屬性列組成新的關(guān)系 A(R) = tA | t R A:R中的屬性列,An Introduction to Database System,2. 投影(Projection),2)投影操作主要是從列的角度進(jìn)行運(yùn)算 但投影之后不僅取消了原關(guān)系中的某些列,而且還可能取消某些元組(避免重復(fù)行),An Introduction to Database System,投影(續(xù)),3) 舉例 例3 查詢學(xué)生的姓名和所在系 即求Student關(guān)系上學(xué)生姓名和所在系兩個(gè)屬性上的投影 Sname,Sdept(

11、Student) 或 2,5(Student) 結(jié)果:,An Introduction to Database System,投影(續(xù)),An Introduction to Database System,投影(續(xù)),例4 查詢學(xué)生關(guān)系Student中都有哪些系 Sdept(Student) 結(jié)果:,An Introduction to Database System,3. 連接(Join),1)連接也稱為連接 2)連接運(yùn)算的含義 從兩個(gè)關(guān)系的笛卡爾積中選取屬性間滿足一定條件的元組 R S = | tr Rts StrAtsB A和B:分別為R和S上度數(shù)相等且可比的屬性組 :比較運(yùn)算符 連接

12、運(yùn)算從R和S的廣義笛卡爾積RS中選?。≧關(guān)系)在A屬性組上的值與(S關(guān)系)在B屬性組上值滿足比較關(guān)系的元組。,An Introduction to Database System,連接(續(xù)),3)兩類常用連接運(yùn)算 等值連接(equijoin) 什么是等值連接 為“”的連接運(yùn)算稱為等值連接 等值連接的含義 從關(guān)系R與S的廣義笛卡爾積中選取A、B屬性值相等的那些元組,即等值連接為: R S = | tr Rts StrA = tsB ,A=B,An Introduction to Database System,連接(續(xù)),自然連接(Natural join) 什么是自然連接 自然連接是一種特殊的

13、等值連接 兩個(gè)關(guān)系中進(jìn)行比較的分量必須是相同的屬性組 在結(jié)果中把重復(fù)的屬性列去掉 自然連接的含義 R和S具有相同的屬性組B R S = | tr Rts StrB = tsB ,An Introduction to Database System,連接(續(xù)),4)一般的連接操作是從行的角度進(jìn)行運(yùn)算。 自然連接還需要取消重復(fù)列,所以是同時(shí)從行和列的角度進(jìn)行運(yùn)算。,An Introduction to Database System,連接(續(xù)),5)舉例 例5,R,S,An Introduction to Database System,連接(續(xù)),R S,An Introduction to D

14、atabase System,連接(續(xù)),等值連接 R S,An Introduction to Database System,連接(續(xù)),自然連接 R S,An Introduction to Database System,4. 除(Division),象集Z:給定一個(gè)關(guān)系R(X,Z),X和Z為屬性組。當(dāng)tX=x時(shí),x在R中的象集(Images Set)為: Zx=tZ|t R,tX=x 它表示R中屬性組X上值為x的諸元組在Z上分量的集合。,An Introduction to Database System,除(續(xù)),給定關(guān)系R (X,Y) 和S (Y,Z),其中X,Y,Z為屬性組。

15、R中的Y與S中的Y可以有不同的屬性名,但必須出自相同 的域集。R與S的除運(yùn)算得到一個(gè)新的關(guān)系P(X),P是R中 滿足下列條件的元組在X屬性列上的投影:元組在X上分 量值x的象集Yx包含S在Y上投影的集合。 RS = tr X | tr RY (S) Yx Yx:x在R中的象集,x = trX,An Introduction to Database System,除(續(xù)),2)除操作是同時(shí)從行和列角度進(jìn)行運(yùn)算 3)舉例,An Introduction to Database System,除(續(xù)),R,S,An Introduction to Database System,分析:,在關(guān)系R中,

16、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)屬性組上的投影 所以 RS =a1,An Introduction to Database System,5綜合舉例,以學(xué)生-課程數(shù)據(jù)庫(kù)為例 例7 查詢至少選修1號(hào)課程和3號(hào)課程的學(xué)生號(hào)碼 首先建立一個(gè)臨時(shí)關(guān)系K:,An Introduction to Database System,

17、綜合舉例(續(xù)),例 7續(xù) Sno.Cno(SC) 95001象集1,2,3 95002象集2,3 Cno(K)=1,3 于是:Sno.Cno(SC)K=95001,An Introduction to Database System,綜合舉例(續(xù)),例 8 查詢選修了2號(hào)課程的學(xué)生的學(xué)號(hào)。 Sno(Cno=2(SC) 95001,95002,An Introduction to Database System,綜合舉例(續(xù)),例9 查詢至少選修了一門其直接先行課為5號(hào)課程的課程的學(xué)生姓名。 Sname(Cpno=5(Course SC Student) 或 Sname(Cpno=5(Course) SC Sno,Sname(Student) 或 Sname (Sno (Cpno=5 (Course) SC) Sno,Sname (Student),An Introduction to Database System,綜合舉例(續(xù)),例10 查詢選修了全部課程的學(xué)生號(hào)碼和姓名。 Sno,Cno(SC)Cno(Course) Sno,Sname(Student),An Introduction to Database System,小結(jié),l關(guān)系代數(shù)運(yùn)算 關(guān)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論