数据库关系运算理论:传统的集合运算概念解析


✨✨ 欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭❤~✨✨

🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。

我是Srlua小谢,在这里我会分享我的知识和经验。🎥

希望在这里,我们能一起探索IT世界的奥妙,提升我们的技能。🔮

记得先点赞👍后阅读哦~ 👏👏

📘📚 所属专栏:数据库

欢迎访问我的主页:Srlua小谢 获取更多信息和资源。✨✨🌙🌙

目录

传统的集合运算

开运算

差运算

交运算

广义笛卡尔积


传统的集合运算

关系代数的运算对象和结果均为关系。

关系代数用到的运算符包括集合运算符、专门的关系运算符、比较运算符和逻辑运算符

如表 2.3 所示。

开运算

例题 2.1 在校学生关系 R 和休学学生关系 S,其中关系 R 与关系 S 都有四个属性(学号,姓名,性别,状态),若要取得所有学生关系T,则关系T由属于在校学生关系 R和休学学生关系S的所有元组组成(即为集合并运算),并且得到的关系T仍然有四个属性(学号,姓名,性别,状态)。

如下表 2.4、表 2.5、表 2.6 所示。

由此,关系R与关系S的并(union)记作:

其结果关系仍为n目关系,由属于R或属于S的元组组成。

差运算

例题 2.2 有本店商品关系 R和不合格商品关系S,其中关系 R 与关系 S都有三个属性(品牌,名称,厂家),若要找出本店内合格的商品关系T,则关系T由属于本店商品关系 R而不属于不合格商品关系S的元组组成(即为集合差运算),并且得到的关系T仍然有三个属性(品牌,名称,厂家)。

如表 2.7、表 2.8、表2.9所示。

由此,关系R与关系S的差(Difference)记作:

其结果关系仍为n目关系,由属于R而不属于S的所有元组组成。


交运算

例题 2.3 在上例中,若要找出本店内不合格的商品关系T,则关系T由既属于本店商品关系 R 又属于不合格商品关系S的元组组成(即为集合交运算),并且得到的关系T仍然有三个属性(品牌,名称,厂家)。

如表210 所示,

由此,关系R与关系S的交(Intersecticm)记作:

其结果关系仍为n目关系,由既属于R又属于S的元组组成。关系的交运算可以用差运算来表示,即RS=R-(R-S),或RS=S-(S-R)。


广义笛卡尔积

例题 2.4 现有学生关系 R 和必修课程关系 S,其中关系 R 有两个属性(学号姓名),关系S有三个属性(课程号,课程名、学分)每个学生必须学习所有必修课程,要求形成选课关系T。由学生选修课程形成的选课关系必须包括学生关系R的属性和必修课程关系S的属性,即关系 T包括学号,姓名,课程号,课程名和学分五个属性,由于学生关系R中两个元组选修的课程都对应着必修课程关系S中的三个元组,所以,选课关系T共有六个元组,则得到的关系T由五个属性和六个元组组成(即为笛卡尔积运算)。

如表2.11、表2.12、表 2.13 所示。

两个分别为 n 目和m 目的关系 R和S的广义笛卡儿积是一个(n+m )列的元组的集合。元组的前n列是关系R的一个元组后m 列是关系S的一个元组。

若R有个元组,S有个元组则关系 R和关系S的广义笛卡儿积有 ,x,个元组。

记作:

希望对你有帮助!加油!

若您认为本文内容有益,请不吝赐予赞同并订阅,以便持续接收有价值的信息。衷心感谢您的关注和支持!

相关推荐
l56575812 分钟前
第五十五天(SQL注入&增删改查&HTTP头&UA&XFF&Referer&Cookie&无回显报错&复盘)
数据库
上海达策TECHSONIC17 分钟前
经验分享:如何让SAP B1数据库性能提升50%
运维·数据库·运维开发
言之。27 分钟前
深入解析Django重定向机制
数据库·django·sqlite
时序数据说33 分钟前
国内开源时序数据库IoTDB介绍
大数据·数据库·物联网·开源·时序数据库·iotdb
Databend1 小时前
CRC32 自包含退化现象分析
数据库
ITZHIHONH2 小时前
FastGPT源码解析 Agent知识库文本资料处理详解和代码分析
数据库·ai编程
小蒜学长3 小时前
基于Spring Boot的火灾报警系统的设计与实现(代码+数据库+LW)
java·数据库·spring boot·后端
福赖3 小时前
《MySQL基础——C 语言链接》
c语言·数据库·mysql
KIDAKN3 小时前
Redis 分布式锁
数据库·redis·分布式