【发布时间】:2015-09-04 12:34:20
【问题描述】:
什么是元组关系演算(TRC)和域关系演算(DRC)?它们与关系代数有何不同?
我是 DBMS 领域的新手。但是我已经学习了关系代数的基础知识。
【问题讨论】:
标签: database relational-database relational-algebra tuple-relational-calculus domain-calculus
什么是元组关系演算(TRC)和域关系演算(DRC)?它们与关系代数有何不同?
我是 DBMS 领域的新手。但是我已经学习了关系代数的基础知识。
【问题讨论】:
标签: database relational-database relational-algebra tuple-relational-calculus domain-calculus
【讨论】:
关系代数是过程语言,元组关系演算是非过程语言。 在元组关系语言中,我们使用符号来请求数据。
虽然关系代数在 查询评估分析,SQL其实就是 基于不同的查询语言。 关系演算有助于定义语义 关系代数与 SQL 的关系
下面是例子(TRC和SQL之间的链接):
TRC = {T | Teaching(T) AND T.Semester = ‘F2000’}
SQL = SELECT *
FROM Teaching T
WHERE T.Semester = ‘F2000’
目标T对应SELECT列表:查询结果包含整个元组。两个子句之间的正文拆分:
在上面的答案中,我想添加以下行: 上面的语句 = TRC = {T |教学(T) AND T.Semester = ‘F2000’}
可以引用为 “T 是一个变量(元组),其值同时等于 Teaching(T) 和 T.Semester = ‘F2000’” IE。 T 是来自关系“Teaching”的元组,指的是具有“Semester”属性为“F2000”的元组。
【讨论】:
领域关系演算 - 与元组关系演算相比,域关系演算使用基于条件从关系中选择的属性列表。它与 TRC 相同,但不同之处在于选择属性而不是选择整个元组。
元组关系演算 - 元组关系演算是一种非过程查询语言,它指定选择关系中的元组。它可以选择具有值范围的元组或某些属性值的元组等。结果关系可以有一个或多个元组。
【讨论】: