解释关系代数(DBMS)中的除法运算?
查询是一个问题或请求信息。查询语言是一种用于从数据库中检索信息的语言。
查询语言分为两种类型:
过程式语言
非过程式语言
过程式语言
通过指定要执行的操作序列来从数据库中检索信息。
例如:关系代数。
关系代数包含一组操作,这些操作将一个或两个关系作为输入,并生成一个新的关系作为输出。
关系代数操作的类型
关系代数操作的不同类型如下:
选择操作
投影操作
重命名操作
并集操作
交集操作
差集操作
笛卡尔积操作
连接操作
除法操作
并集、交集、差集、笛卡尔积、连接、除法属于二元运算(对两个表进行运算)。
除法操作
除法运算用于涉及“所有”的查询。
R1 ÷ R2 = 与 R2 的所有元组关联的 R1 的元组。
示例
检索所有课程中教授的科目的名称。
名称 | 课程 |
---|---|
系统 | Btech |
数据库 | Mtech |
数据库 | Btech |
代数 | Btech |
÷
课程 |
---|
Btech |
Mtech |
=
名称 |
数据库 |
结果操作必须包含存在于第一个关系或 R 中的所有关系 S 的元组组合。
示例
检索所有 John Smith 从事过的项目的员工姓名。
考虑以下给出的 Employee 表:
名称 | Eno | Pno |
---|---|---|
John | 123 | P1 |
Smith | 123 | P2 |
A | 121 | P3 |
÷
从事以下工作:
Eno | Pno | Pname |
---|---|---|
123 | P1 | 市场 |
123 | P2 | 销售 |
=
结果如下
Eno |
---|
123 |
表达式如下
Smith <- ΠPno(σEname = ‘john smith’ (employee * works on Pno=Eno))
广告