博客
关于我
【数据库系统概念】第6章 形式化关系查询语言 知识总结
阅读量:395 次
发布时间:2019-03-05

本文共 990 字,大约阅读时间需要 3 分钟。

《系统概念》第6章知识点总结

形式化关系查询语言

形式化关系查询语言是数据库查询的核心工具,主要以关系代数为基础。关系代数通过一系列基本运算(如选择、投影、并、集合差、笛卡尔积、更名等)构建复杂查询表达式。

基本运算

选择运算

选择运算(σ)用于筛选满足特定条件的元组。条件由谓词定义,通常支持比较运算(=、≠、<、≤、>、≥)。多个谓词可通过逻辑连接符组合成一个大谓词。

投影运算

投影运算(π)是一元运算,用于保留或排除某些属性。常用大写希腊字母π表示,例如π的投影会返回一个元组,但去除指定的属性。

关系运算的组合

通过组合各种关系运算,可以构建复杂的查询。例如,找出物理系的所有教师的名字,可以通过选择运算筛选教师身份,再投影出教师名单。

并运算

并运算(∪)将两个关系的结果合并,包含所有出现在任一关系中的元组。例如,找出2009年秋季学期或2010年春季学期开设的课程。

集合差运算

集合差运算(−)用于找出一个关系中但不在另一个关系中的元组。例如,找出2009年秋季学期但不在2010年春季学期开设的课程。

笛卡尔积运算

笛卡尔积(×)将两个关系的元组组合,生成笛卡尔积的元组。例如,R × S的结果将包含R和S的所有元组的组合。

更名运算

更名运算(ρ)用于给关系代数表达式的结果赋予元组变量名称。例如,ρ_R(R)会将结果元组的各个属性重新命名为x1、x2等。

附加关系代数运算

集合交运算

集合交运算(∩)用于找出两个关系的公共元组。例如,找出2009年秋季学期和2010年春季学期都开设的课程。

自然连接运算

自然连接(∈)用于关联两个关系。首先形成笛卡尔积,再基于共同属性选择满足条件的元组,去除重复属性。

外连接运算

外连接(⊙)是自然连接的扩展,用于处理确实信息。左外连接、右外连接和全外连接分别处理不同情况。

扩展的关系代数运算

广义投影

广义投影允许在投影列表中使用算术运算和字符串函数等扩展投影的功能。

聚集运算

聚集运算用于对多个值应用聚集函数(如求和、平均、最小值等)。例如,计算所有课程的总学分。

元组关系演算

元组关系演算允许在元组中使用变量。例如,存在量词(∃)用于判断是否存在满足条件的元组。

域关系演算

域关系演算关注属性域的取值范围。例如,选择运算中的值域和定义域的关系。

注:图片均来自《数据库系统概念》第6版——机械工业出版社

转载地址:http://grqwz.baihongyu.com/

你可能感兴趣的文章
Python Matplotlib Box并排绘制两个数据集
查看>>
python matplotlib简单使用
查看>>
Python Multiprocessing - 将类方法应用于对象列表
查看>>
python nltk nltk_data 离线安装,chatterbot
查看>>
python numba 转灰度图_使用NumPy、Numba的简单使用(二)
查看>>
python numpy矩阵索引_python – 在2D numpy ndarray或numpy矩阵中获取前N个值的索引
查看>>
python os.system
查看>>
Python os.system执行多条语句,os.system的返回值以及与os.popen的区别
查看>>
Python os和sys模块
查看>>
python os文件/目录
查看>>
Python Package 之 Faker(随机姓名、电话)
查看>>
python运算符优先级
查看>>
Python Panda TIME 系列重新采样
查看>>
python pandas TimeStamps到夏令时的本地时间字符串
查看>>
Python pandas 数据清洗与数据绘图实战
查看>>
Python Pandas 用顶行替换标题
查看>>
Python pandas 通过 dt 访问器有效地将日期时间转换为时间戳
查看>>
Python Pandas-从DataFrame按类别绘制多个条形图
查看>>
Python Pandas:每月或每周拆分 TimeSerie
查看>>
python pandas中融化的对面
查看>>