關係代數和關係演算的區別


關係代數

關係代數是一種過程化查詢語言,它以關係的例項作為輸入,併產生關係的例項作為輸出。它使用運算子來執行查詢。運算子可以是一元的或二元的。它們接受關係作為輸入,併產生關係作為輸出。關係代數在關係上遞迴地執行,中間結果也被認為是關係。

關係代數的基本運算如下:

  • 選擇

  • 投影

  • 並集

  • 集合差

  • 笛卡爾積

  • 重新命名

關係演算

與關係代數相反,關係演算是一種非過程化查詢語言,也就是說,它說明做什麼,但從不解釋怎麼做。

關係演算存在兩種形式:

  • 元組關係演算 (TRC)

  • 域關係演算 (DRC)

以下是關係代數和關係演算之間的一些重要區別。

序號關鍵關係代數關係演算
1語言型別關係代數是過程化查詢語言。關係演算是非過程化或宣告式查詢語言。
2目標關係代數的目標是如何獲得結果。關係演算的目標是什麼結果。
3順序關係代數指定執行操作的順序。關係演算沒有指定其操作的執行順序。
4依賴性關係代數是域無關的。關係演算可以是域相關的。
5程式語言關係代數接近於程式語言概念。關係演算與程式語言概念無關。

更新於:2020年5月16日

17K+ 次瀏覽

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告