博客
关于我
【数据库系统概念】第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与flask_Python编程中flask的简介与简单使用
查看>>
python与图灵机器人交互(WXPY版本)
查看>>
python与运算符_python运算符
查看>>
python两个列表获取交集,并集,差集
查看>>
python两个字典合并,两个list合并
查看>>
Python两个版本共存时,命令行升级pip
查看>>
Python两个版本共存时,怎么验证是否安装成功 scrapy
查看>>
Python两个版本共存时,通过pip安装Scrapy
查看>>
python两组变量的相关关系散点图_变量是什么?变量间的两种关系——函数关系和相关关系(小学版)...
查看>>
Python中 pass语句的作用
查看>>
python中 urllib, urllib2, httplib, httplib2 几个库的区别
查看>>
python中 yaml库 & json库 & xmltodict库使用
查看>>
python中 将你的名字转化成为二进制并输出
查看>>
Python中*args 和**kwargs的用法
查看>>
Python中*args 和**kwargs的用法
查看>>
Python中*args和**kwargs的使用
查看>>
python中0、1、True、False、if条件
查看>>
python中argparse模块关于 parse_args() 函数详解(全)
查看>>
python中base64编码与解码
查看>>
python中break怎么用_详解Python中break语句的用法
查看>>