关系代数和关系演算的区别


关系代数

关系代数是一种过程化查询语言,它以关系的实例作为输入,并产生关系的实例作为输出。它使用运算符来执行查询。运算符可以是一元的或二元的。它们接受关系作为输入,并产生关系作为输出。关系代数在关系上递归地执行,中间结果也被认为是关系。

关系代数的基本运算如下:

  • 选择

  • 投影

  • 并集

  • 集合差

  • 笛卡尔积

  • 重命名

关系演算

与关系代数相反,关系演算是一种非过程化查询语言,也就是说,它说明做什么,但从不解释怎么做。

关系演算存在两种形式:

  • 元组关系演算 (TRC)

  • 域关系演算 (DRC)

以下是关系代数和关系演算之间的一些重要区别。

序号关键关系代数关系演算
1语言类型关系代数是过程化查询语言。关系演算是非过程化或声明式查询语言。
2目标关系代数的目标是如何获得结果。关系演算的目标是什么结果。
3顺序关系代数指定执行操作的顺序。关系演算没有指定其操作的执行顺序。
4依赖性关系代数是域无关的。关系演算可以是域相关的。
5编程语言关系代数接近于编程语言概念。关系演算与编程语言概念无关。

更新于:2020年5月16日

17K+ 次浏览

开启你的职业生涯

完成课程获得认证

开始学习
广告