首先講講運算的約束條件,在我看的《資料庫系統原理》一書中,假設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 無序性 給定的乙個集合,集合內的元素間位...