avatar

Ryan-Hong's Tech Blog

Stay Humble

  • 首页
  • 分类
  • 技术栈
  • 知识库
Home 数据库系统---关系代数
文章

数据库系统---关系代数

Posted 2025-06-13 Updated 2025-06- 15
By Administrator
40~51 min read

关系代数是一种抽象的查询语言,它用对关系的运算来表达查询

传统的集合运算

并(Union)

R:

S:

R∪S :

差(Difference)

R:

S:

R - S:

交(Intersection)

R:

S:

R∩S:

笛卡尔积(Cartesian Product)

R:

S:

R×S :

列数相加,行数相乘

专门的关系运算

选择(Selection)

选择运算是从关系R中选取使逻辑表达式F为真的元组,是从行的角度进行的运算

查询信息系(IS系)全体学生

查询年龄小于20岁的学生

投影(Projection)

投影操作主要是从列的角度进行运算

查询学生的姓名和所在系

连接(Join)

一般的连接操作是从行的角度进行运算。

自然连接还需要取消重复列,所以是同时从行和列的角度进行运算。

一般连接:先做笛卡尔积,再通过筛选条件删除不符合的选项

等值连接:先做笛卡尔积,再通过筛选条件(相关列相等)删除不符合的选项

自然连接:先做笛卡尔积,再通过筛选条件(相关列相等)删除不符合的选项

外连接:

如果把悬浮元组也保存在结果关系中,而在其他属性上填空值(Null),就叫做外连接

左外连接(LEFT OUTER JOIN或LEFT JOIN)

只保留左边关系R中的悬浮元组

右外连接(RIGHT OUTER JOIN或RIGHT JOIN)

只保留右边关系S中的悬浮元组

R:

S:

一般连接:

等值连接:

自然连接:

外连接

除运算(Division)

R:

S:

R÷S:

知识库
DataBase
License:  CC BY 4.0
Share

Further Reading

Jun 13, 2025

数据库系统---关系代数

关系代数是一种抽象的查询语言,它用对关系的运算来表达查询 传统的集合运算 并(Union) R: S:

Jun 13, 2025

数据库系统---数据模型

层次模型 层次模型是数据库系统中最早出现的数据模型 层次模型用树形结构来表示各类实体以及实体间的联系 满足下面两个条件的基本层次联系的集合为层次模型 1. 有且只有一个结点没有双亲结点,这个结点称为根结点 2. 根以外的其它结点有且只有一个双亲结点 层次模型的特点: 结点

Jun 13, 2025

数据库系统---视图

定义视图 建立视图 CREATE VIEW <视图名> [(<列名> [,<列名>]…)] AS <子查询>

OLDER

数据库系统---数据模型

NEWER

For zsh修改 PATH 环境变量

Recently Updated

  • For zsh修改 PATH 环境变量
  • 数据库系统---关系代数
  • 数据库系统---数据模型
  • 数据库系统---视图
  • 数据库系统---未掌握

Trending Tags

thesis 色彩 NLP Typora Java Linux 数据分析 pandas MacOS DataBase

Contents

  • 并(Union)
  • 差(Difference)
  • 交(Intersection)
  • 笛卡尔积(Cartesian Product)
  • 选择(Selection)
  • 投影(Projection)
  • 连接(Join)
  • 除运算(Division)

©2025 Ryan-Hong's Tech Blog. Some rights reserved.

Using the Halo theme Chirpy