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

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

传统的集合运算

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

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

如表 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的元组组成。关系的交运算可以用差运算来表示,即R S=R-(R-S),或R S=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 ,个元组。

记作:

希望对你有帮助!加油!

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

目录
相关文章
|
SQL 存储 关系型数据库
第二篇:关系型数据库的核心概念与 SQL 基础
本篇内容深入浅出地讲解了关系型数据库的核心概念与SQL基础,适合有一定计算机基础的学习者。文章涵盖数据库的基本操作(CRUD)、数据类型、表的创建与管理等内容,并通过实例解析SELECT、INSERT、UPDATE、DELETE等语句的用法。此外,还推荐了多种学习资源与实践建议,帮助读者巩固知识。学完后,你将掌握基础数据库操作,为后续高级学习铺平道路。
775 1
|
SQL 数据挖掘 测试技术
南大通用GBase8s数据库:LISTAGG函数的解析
南大通用GBase8s数据库:LISTAGG函数的解析
|
存储 JSON 数据格式
ElasticSearch基础概念解析
以上就是ElasticSearch的基础概念。理解了这些概念,你就可以更好地使用ElasticSearch,像使用超级放大镜一样,在数据海洋中找到你需要的珍珠。
384 71
|
存储 缓存 自然语言处理
评论功能开发全解析:从数据库设计到多语言实现-优雅草卓伊凡
评论功能开发全解析:从数据库设计到多语言实现-优雅草卓伊凡
393 8
评论功能开发全解析:从数据库设计到多语言实现-优雅草卓伊凡
|
存储 关系型数据库 数据库
高性能云盘:一文解析RDS数据库存储架构升级
性能、成本、弹性,是客户实际使用数据库过程中关注的三个重要方面。RDS业界率先推出的高性能云盘(原通用云盘),是PaaS层和IaaS层的深度融合的技术最佳实践,通过使用不同的存储介质,为客户提供同时满足低成本、低延迟、高持久性的体验。
|
存储 算法 Java
实现不同数据库的表间的 JOIN 运算的极简方法
跨库计算是数据分析中的常见难题,尤其涉及多数据库系统时,表间 JOIN 操作复杂度显著提升。esProc 提供了一种高效解决方案,能够简化跨库 JOIN 的实现。例如,在车辆管理、交管和公民信息系统中,通过 esProc 可轻松完成如下任务:按城市统计有车公民事件数量、找出近一年获表彰的车主信息,以及按年份和品牌统计车辆违章次数。esProc 支持不同关联场景(如维表关联与主子表关联)的优化算法,如内存索引、游标处理和有序归并,从而大幅提升编码和运算效率。无论是同构还是异构数据源,esProc 均能灵活应对,为复杂数据分析提供强大支持。
|
SQL 存储 关系型数据库
第一篇:数据库基础与概念
这篇文档面向数据库初学者,系统介绍了数据库的基础概念、类型、管理工具及实践方法。内容涵盖数据库定义、应用场景(如电商、银行系统)、数据库管理系统(DBMS)的功能与常见系统(MySQL、PostgreSQL等),以及关系型与非关系型数据库的区别。同时,文章详细解析了基本术语(表、记录、字段、主键、外键)和ER图设计,并提供了实践建议,包括创建简单数据库、学习SQL语言、使用管理工具等。最后推荐了学习资源和书籍,鼓励读者通过实际项目巩固知识,逐步掌握数据库的核心技能。
1647 11
|
XML Java 开发者
Spring底层架构核心概念解析
理解 Spring 框架的核心概念对于开发和维护 Spring 应用程序至关重要。IOC 和 AOP 是其两个关键特性,通过依赖注入和面向切面编程实现了高效的模块化和松耦合设计。Spring 容器管理着 Beans 的生命周期和配置,而核心模块为各种应用场景提供了丰富的功能支持。通过全面掌握这些核心概念,开发者可以更加高效地利用 Spring 框架开发企业级应用。
476 18
|
存储 关系型数据库 MySQL
double ,FLOAT还是double(m,n)--深入解析MySQL数据库中双精度浮点数的使用
本文探讨了在MySQL中使用`float`和`double`时指定精度和刻度的影响。对于`float`,指定精度会影响存储大小:0-23位使用4字节单精度存储,24-53位使用8字节双精度存储。而对于`double`,指定精度和刻度对存储空间没有影响,但可以限制数值的输入范围,提高数据的规范性和业务意义。从性能角度看,`float`和`double`的区别不大,但在存储空间和数据输入方面,指定精度和刻度有助于优化和约束。
2209 5
|
调度 开发者
核心概念解析:进程与线程的对比分析
在操作系统和计算机编程领域,进程和线程是两个基本而核心的概念。它们是程序执行和资源管理的基础,但它们之间存在显著的差异。本文将深入探讨进程与线程的区别,并分析它们在现代软件开发中的应用和重要性。
613 4

推荐镜像

更多
  • DNS