1. 程式人生 > >【資料庫複習】關係代數

【資料庫複習】關係代數

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow

也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!

               

 

關係代數 

 

問:為何稱為代數?

 

答:因為存在操作符和運算元,運算元為表,操作符為交、並等;

 

關係代數有分為基於集合的關係代數和基於包的關係代數;



關係代數的基本操作:並、選擇、投影、笛卡爾積、差、重新命名;

基本操作的意思是其他的操作符可以通過基本操作推出;


注意:如果我們使用並、交、差運算,必須保證R和S的屬性集合是相同的,當然如果不同,也可以通過重新命名操作;


 

 

補充:

 

1.自然連線

 

  

 

2. θ連線

 

 


3.重新命名 

 


表示式樹

 


基於包的關係代數

 

1.並

如果元組t在R中出現m次,S中出現n次,則在R∪S中出現m+n次;

2.交

如果元組t在R中出現m次,S中出現n次,則R∩S中出現min(m,n)次;

3.差

如果元組t在R中出現m次,S中出現n次,則R-S中出現(1)如果m>n,則出現m-n次;(2)如果m<n,則出現0次;

 

4.消除重複操作符

 

δ(R) 能對關係R消除重複元組;


5.聚集操作符

 

SUM(A)

AVG(A)

MIN(A)

MAX(A)

COUNT(A)

其中A為某個屬性;

 

6.分組操作符

 

γ

包含了以某個屬性作為分組屬性,還有聚集操作符;

 


 

7.排序元組

 

τA(R)  表示根據A屬性進行排序;


8.外連線

 

 

左外連線:

 

 

右外連線:

 

 

9.擴充套件投影運算



關係代數表示式的分步表示

 

因為用一個表示式直接表示複雜的代數表示式會很不清楚,因此我們可以通過分步表示;

比如:

可以表示為:

 


 

           

給我老師的人工智慧教程打call!http://blog.csdn.net/jiangjunshow

這裡寫圖片描述