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

本文涉及的产品
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: 数据库关系运算理论:传统的集合运算概念解析

传统的集合运算

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

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

如表 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 ,个元组。

记作:

希望对你有帮助!加油!

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

目录
相关文章
|
12天前
|
网络协议 安全 Linux
网卡接口跃点数:概念与重要性解析
在计算机网络中,跃点数(Hop Count)是指数据包从源设备传输到目标设备时经过的路由器或网关数量,是衡量路径长度的关键指标。本文详细介绍了跃点数的概念、计算方法及其在网络管理中的重要性,包括性能评估、故障排除、网络优化及路由选择等方面的应用。通过使用traceroute或tracert命令,网络管理员可以轻松获取跃点数信息,并据此优化网络结构,提高数据传输效率和安全性。尽管跃点数是重要指标,但仍需与其他因素结合分析以全面评估网络性能。
|
27天前
|
机器学习/深度学习 人工智能 自然语言处理
Transformer图解以及相关的概念解析
前言 transformer是目前NLP甚至是整个深度学习领域不能不提到的框架,同时大部分LLM也是使用其进行训练生成模型,所以transformer几乎是目前每一个机器人开发者或者人工智能开发者不能越过的一个框架。接下来本文将从顶层往下去一步步掀开transformer的面纱。 transformer概述 Transformer模型来自论文Attention Is All You Need。 在论文中最初是为了提高机器翻译的效率,它使用了Self-Attention机制和Position Encoding去替代RNN。后来大家发现Self-Attention的效果很好,并且在其它的地
38 2
|
22天前
|
SQL 关系型数据库 MySQL
MySQL技术安装配置、数据库与表的设计、数据操作解析
MySQL,作为最流行的关系型数据库管理系统之一,在WEB应用领域中占据着举足轻重的地位。本文将从MySQL的基本概念、安装配置、数据库与表的设计、数据操作解析,并通过具体的代码示例展示如何在实际项目中应用MySQL。
65 0
|
2月前
|
存储 C# 关系型数据库
“云端融合:WPF应用无缝对接Azure与AWS——从Blob存储到RDS数据库,全面解析跨平台云服务集成的最佳实践”
【8月更文挑战第31天】本文探讨了如何将Windows Presentation Foundation(WPF)应用与Microsoft Azure和Amazon Web Services(AWS)两大主流云平台无缝集成。通过具体示例代码展示了如何利用Azure Blob Storage存储非结构化数据、Azure Cosmos DB进行分布式数据库操作;同时介绍了如何借助Amazon S3实现大规模数据存储及通过Amazon RDS简化数据库管理。这不仅提升了WPF应用的可扩展性和可用性,还降低了基础设施成本。
56 0
|
2月前
|
Java 数据库连接 数据库
AI 时代风起云涌,Hibernate 实体映射引领数据库高效之路,最佳实践与陷阱全解析!
【8月更文挑战第31天】Hibernate 是一款强大的 Java 持久化框架,可将 Java 对象映射到关系数据库表中。本文通过代码示例详细介绍了 Hibernate 实体映射的最佳实践,包括合理使用关联映射(如 `@OneToMany` 和 `@ManyToOne`)以及正确处理继承关系(如单表继承)。此外,还探讨了常见陷阱,例如循环依赖可能导致的无限递归问题,并提供了使用 `@JsonIgnore` 等注解来避免此类问题的方法。通过遵循这些最佳实践,可以显著提升开发效率和数据库操作性能。
68 0
|
2月前
|
JSON 数据格式 Java
化繁为简的魔法:Struts 2 与 JSON 联手打造超流畅数据交换体验,让应用飞起来!
【8月更文挑战第31天】在现代 Web 开发中,JSON 成为数据交换的主流格式,以其轻量、易读和易解析的特点受到青睐。Struts 2 内置对 JSON 的支持,结合 Jackson 库可便捷实现数据传输。本文通过具体示例展示了如何在 Struts 2 中进行 JSON 数据的序列化与反序列化,并结合 AJAX 技术提升 Web 应用的响应速度和用户体验。
76 0
|
2月前
|
监控 网络协议 Java
Tomcat源码解析】整体架构组成及核心组件
Tomcat,原名Catalina,是一款优雅轻盈的Web服务器,自4.x版本起扩展了JSP、EL等功能,超越了单纯的Servlet容器范畴。Servlet是Sun公司为Java编程Web应用制定的规范,Tomcat作为Servlet容器,负责构建Request与Response对象,并执行业务逻辑。
Tomcat源码解析】整体架构组成及核心组件
|
2月前
|
存储 NoSQL Redis
redis 6源码解析之 object
redis 6源码解析之 object
58 6
|
21天前
|
存储 缓存 Java
什么是线程池?从底层源码入手,深度解析线程池的工作原理
本文从底层源码入手,深度解析ThreadPoolExecutor底层源码,包括其核心字段、内部类和重要方法,另外对Executors工具类下的四种自带线程池源码进行解释。 阅读本文后,可以对线程池的工作原理、七大参数、生命周期、拒绝策略等内容拥有更深入的认识。
什么是线程池?从底层源码入手,深度解析线程池的工作原理
|
25天前
|
开发工具
Flutter-AnimatedWidget组件源码解析
Flutter-AnimatedWidget组件源码解析

热门文章

最新文章

推荐镜像

更多
下一篇
无影云桌面