DBMS 关系演算

前面我们讨论了关系代数 ,这是一种过程查询语言。在本文中,我们将讨论关系演算,它是一种非过程查询语言。

什么是关系演算?

关系演算是一种非过程查询语言,它告诉系统要检索哪些数据但不告诉如何检索它。

关系演算的类型

DBMS 关系演算

元组关系演算(TRC)

元组关系演算用于选择满足给定条件的元组。

表:Student

First_Name     Last_Name     Age
----------     ---------     ----
Ajeet          Singh         30
Chaitanya      Singh         31
Rajeev         Bhatia        27
Carl           Pratap        28

让我们编写查询的关系演算。

查询来显示年龄大于 30 岁的学生的姓氏。

{ t.Last_Name | Student(t) AND t.age > 30 }

在上面的查询中,您可以看到由|符号分隔的两个部分。第二部分是我们定义条件的地方,在第一部分中我们为所选元组指定了要显示的字段。

上述查询的结果将是:

Last_Name
---------
Singh

查询来显示姓氏为"Singh"的学生的所有详细信息。

{ t | Student(t) AND t.Last_Name = 'Singh' }

输出:

First_Name     Last_Name     Age
----------     ---------     ----
Ajeet          Singh         30
Chaitanya      Singh         31

域关系演算(DRC)

在域关系演算中,记录基于域进行过滤。

我们再次采用相同的表来了解 DRC 的工作原理。

表:Student

First_Name     Last_Name     Age
----------     ---------     ----
Ajeet          Singh         30
Chaitanya      Singh         31
Rajeev         Bhatia        27
Carl           Pratap        28

查询来查找年龄大于 27 岁的学生的名字和年龄

{< First_Name, Age > | ∈ Student ∧ Age > 27}

注:
用于逻辑运算符的符号为:表示 AND,表示 OR,表示 NOT。

输出:

First_Name     Age
----------     ----
Ajeet          30
Chaitanya      31
Carl           28

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程