關係代數 除法運算

2021-08-30 09:18:11 字數 865 閱讀 4404

首先講講運算的約束條件,在我看的《資料庫系統原理》一書中,假設rs÷s,那麼一般情況下s的屬性集是rs屬性集的真子集。而樓主給出的原題不符合這個條件(關係r的屬性集為,關係s的屬性集為,實際上s中只有s-r=這些屬性參與了運算),這種情況很少發生

要理解除法這個比較複雜的運算,得明白為什麼需要它,也就是在什麼場合下需要。就本人目前所學中,這種場合只有乙個,就是在兩個實體的聯絡關係中查詢實體。演算法的數學語言描述很令人費解,樓主看個例子就容易懂了。假設有這麼三個關係r、s、rs:

關係r:

學生名--------

張三 李四

王五 關係s:

課程名------

語文數學

關係rs:

學生名 課程名

--------------

張三 語文

張三 數學

李四 語文

可以看出,關係r代表實體「學生」,關係s代表實體「課程」,關係rs代表學生和課程之間的聯絡「選課」。

rs÷s的意義就是「在r和s的聯絡rs中,找出與s中所有的元組有關係的r元組」。用例子說明:

r的元組有《張三》、《李四》、《王五》,s的元組有《語文》、《數學》;

那麼rs中的元組《張三,語文》就意味著r的元組《張三》與s中的元組《語文》有關係;元組《張三,數學》意味著r的元組《張三》與s中的元組《數學》有關係;

這樣,r中的《張三》與s中所有元組都有聯絡,所以它是rs÷s的結果之一,也是這個例子中唯一的結果(樓主可以自己分析《李四》和《王五》)。

所以rs÷s的結果是:

學生姓名

--------

張三 而rs÷s的意義是「選修了所有課程的學生」,樓主自己理解理解吧,其實很簡單的。

**:

關係代數中的除法運算

這個概念的描述的非常抽象,剛開始學習的同學完全不知所云。這裡通過乙個例項來說明除法運算的求解過程 設有關係r s 如圖所示,求r s 的結果 求解步驟過程 第一步 找出關係r和關係s中相同的屬性,即y屬性。在關係s中對y做投影 即將y列取出 所得結果如下 第二步 被除關係r中與s中不相同的屬性列是x...

關係代數中的除法

在介紹關係代數的除法以前我們必須熟悉象集的概念 給定乙個關係r x,z x 和z 為屬性組。當 t x x 時,x 在 r 中的象集 images set 為 zx 表示r中屬性組x上值為x的諸元組在屬性組z上分量的集合。s在b2上的象集為上圖右方的關係。r與s的除運算得到乙個新的關係p x p是r...

關係代數運算

五種基本關係代數運算 集合 某些指定的物件集在一起就成了乙個集合,其中每乙個物件叫元素。集合的三特性 確定性 互異性 無序性。1 確定性 指的是概念清晰,物件描述明確,不能含混不清 不能模稜兩可。2 互異性 對於乙個給定的集合,它的任何兩個元素都是不同的。3 無序性 給定的乙個集合,集合內的元素間位...