概述
傳統的集合運算 (並,差,交,笛卡爾積)
專門的關係運算
r和s具有相同的目n(即兩個關係都有n個屬性)
相應的屬性取自同乙個域
r∪s
仍為n目關係,由屬於r或屬於s的元組組成
r∪s = r和s
具有相同的目n
相應的屬性取自同乙個域
r - s
仍為n目關係,由屬於r而不屬於s的所有元組組成
r -s = r和s
具有相同的目n
相應的屬性取自同乙個域
r∩s仍為n目關係,由既屬於r又屬於s的元組組成
r∩s =
r∩s = r –(r-s)r: n目關係,k1個元組
s: m目關係,k2個元組
rs 列:(n+m)列元組的集合
元組的前n列是關係r的乙個元組
後m列是關係s的乙個元組
行:k1k2個元組
rs = 先引入幾個記號
(1) r,t?r,t[ai]
設關係模式為r(a1,a2,…,an)
它的乙個關係設為r
t?r表示t是r的乙個元組
t[ai]則表示元組t中相應於屬性ai的乙個分量(2) a,t[a], a
若a=,其中ai1,ai2,…,aik是a1,a2,…,an中的一部分,則a稱為屬性列或屬性組。
t[a]=(t[ai1],t[ai2],…,t[aik])表示元組t在屬性列a上諸分量的集合。
a則表示中去掉後剩餘的屬性組。(3) tr ts
r為n目關係,s為m目關係。
tr ?r,ts?s, tr ts稱為元組的連線。
tr ts是乙個n + m列的元組,前n個分量為r中的乙個n元組,後m個分量為s中的乙個m元組。(4)象集zx
給定乙個關係r(x,z),x和z為屬性組。
當t[x]=x時,x在r中的象集(images set)為:
zx=它表示r中屬性組x上值為x的諸元組在z上分量的集合1)連線也稱為θ連線
2)連線運算的含義
從兩個關係的笛卡爾積中選取屬性間滿足一定條件的元組
r s =
a和b:分別為r和s上度數相等且可比的屬性組
θ:比較運算子
連線運算從r和s的廣義笛卡爾積rs中選取(r關係)在a屬性組上的值與(s關係)在b屬性組上值滿足比較關係θ的元組3)兩類常用連線運算
等值連線(equijoin)
什麼是等值連線
θ為「=」的連線運算稱為等值連線
等值連線的含義
從關係r與s的廣義笛卡爾積中選取a、b屬性值相等的那些元組,即等值連線為:
r s = 自然連線(natural join)
自然連線是一種特殊的等值連線
兩個關係中進行比較的分量必須是相同的屬性組(同名同域:必須具有相同的屬性名,並且出自相同的域集)
在結果中把重複的屬性列去掉
自然連線的含義
r和s具有相同的屬性組b
r s =
一般的連線操作是從行的角度進行運算。
自然連線還需要取消重複列,所以是同時從行和列的角度進行運算。外連線
在做自然連線時,如果把捨棄的元組也儲存在結果關係中,而在其他屬性上填空值(null),這種連線就叫做外連線(outer join)。
左外連線
在做自然連線時,如果只把左邊關係r中要捨棄的元組保留就叫做左外連線(left outer join或left join)
右外連線
在做自然連線時,如果只把右邊關係s中要捨棄的元組保留就叫做右外連線(right outer join或right join)。給定關係r (x,y) 和s (y,z),其中x,y,z為屬性組。
r中的y與s中的y可以有不同的屬性名,但必須出自相同的域集。
r與s的除運算得到乙個新的關係p(x),
p是r中滿足下列條件的元組在 x 屬性列上的投影:
元組在x上分量值x的象集yx包含s在y上投影的集合,記作:
r÷s =
yx:x在r中的象集,x = tr[x]在關係r中,a可以取四個值
a1的象集為
a2的象集為
a3的象集為
a4的象集為
s在(b,c)上的投影為
只有a1的象集包含了s在(b,c)屬性組上的投影
所以 r÷s =
關係代數運算集(資料庫)
舉個栗子 現有兩個課程關係表course1 和 course2 表 2 1 course1 courseid coursename credit 101計算機網路 4102 資料庫原理 3103 網路開發 4表 2 2 course2 courseid coursename credit 101計算...
資料庫關係代數
概述 傳統的集合運算 並,差,交,笛卡爾積 專門的關係運算 r和s 具有相同的目n 即兩個關係都有n個屬性 相應的屬性取自同乙個域 r s 仍為n目關係,由屬於r或屬於s的元組組成 r s r和s 具有相同的目n 相應的屬性取自同乙個域 r s 仍為n目關係,由屬於r而不屬於s的所有元組組成 r s...
資料庫 關係代數
目錄 有了資料庫,還要通過查詢來獲得資料。sql是常用的查詢語言,但我想用更抽象的查詢語言來表達,從思路上去理解而忽略實現細節。下面將介紹關係代數。在介紹查詢語言之前,先定義乙個資料庫例項 sailors sid integer,sname string,rating interger,age re...