数据库:关系代数

数据库原理:关系代数 阅读详情

目录

有了数据库,还要通过查询来获得数据。SQL是常用的查询语言,但我想用更抽象的查询语言来表达,从思路上去理解而忽略实现细节。下面将介绍关系代数。

数据库实例

在介绍查询语言之前,先定义一个数据库实例:
Sailors(sid: integer, sname: string, rating: interger, age: real)
Boats(bid: integer, bname: string, color: string)
Reserves(sid: integer, bid: integer, day: date)

关系代数

选择与投影

选择和投影均可对单个关系进行操作。选择行的操作符为 σ \sigma σ,投影列的操作符为 π \pi π,两种操作均可以添加检索条件。

等级大于8的水手: σ r a t i n g > 8 ( S a i l o r s ) \sigma{_{rating > 8}}(Sailors) σrating>8​(Sailors)
所有水手名字和等级: π s n a m e , r a t i n g ( S a i l o r s ) \pi{_{sname, rating}}(Sailors) πsname,rating​(Sailors)

集合操作

每个关系都可以看作实例的集合,因此可以对两个关系进行集合操作。集合操作包括交,并,差以及笛卡尔积,操作符分别为 ⋂ \bigcap ⋂, ⋃ \bigcup ⋃, − - −, × \times ×。两个关系进行集合操作的结果仍为关系。

连接

连接操作包括条件连接、相等连接和自然连接,操作符为 ⋈ \Join ⋈。连接本质上是求笛卡尔积,条件连接是只对符合条件的元组进行连接,相等连接是条件为相等表达式的连接,自然连接是只对存在同名字段的元组进行连接。

所有水手预订的船只: S a i l o r s ⋈ R e s e r v e s ⋈ B o a t s Sailors\Join Reserves\Join Boats Sailors⋈Reserves⋈Boats

除

除并不是基本操作,虽然可以用操作符 ∖ \setminus ∖ 表示,但实际上除是由其它操作定义的。考虑两个关系实例 A A A 和 B B B, A A A 有且仅有字段 x x x 和 y y y,而 B B B 只有一个字段 y y y。 A ∖ B A\setminus B A∖B 定义为满足如下条件的 x x x 的集合,对于 B B B 中每个元组 y y y,在 A A A 中都有一个元组 &lt; x , y &gt; &lt;x, y&gt; <x,y> 与之对应。

A ∖ B A\setminus B A∖B 定义为: π x ( A ) − π x ( ( π x ( A ) × B ) − A ) \pi{_x}(A) - \pi{_x}((\pi{_x}(A) \times B) - A) πx​(A)−πx​((πx​(A)×B)−A)

参考资料

Raghu Ramakrishnan, Johannes Gehrke. Database Management Systems (Third Edition)[M]. 北京:清华大学出版社, 2003.

数据库复习笔记:关系代数 笔记:介绍了常用的关系代数,包括并、交、差、笛卡尔积、选择、投影、连接等。 阅读详情

相关推荐

数据库系统(4):关系模型之关系代数

重点与难点 关系代数基本操作:并、差、积、选择、投影、(更名) 关系代数扩展操作:交、-连接、自然连接 关系代数复杂扩展操作:除、外连接 书写关系代数的基本思维训练:“一个集合,施加一个操作得到一个集合,依次施加关系代数操作,进而得到所需结果” “以集合为中心” 一、什么是关系代数 关系代数运算的特点 基于集合提供了一系列的关系代数操作,是一种集合思维的操作语言 关系代数操...

qq_36628619的博客 1551

数据库系统概论——关系代数详解

关系代数是一种抽象的查询语言,是关系数据操纵语言的一种传统表达方式,它是利用对关系的运算来表达查询的。任何运算都是将一定的运算符作用于一定的运算对象上,得到预期的运算结果。关系代数的运算对象是关系,运算结果亦为关系。集合运算符将关系看成元组的集合从关系的“水平”方向即行的角度来进行运算专门的关系运算符不仅涉及行而且涉及列算术比较符辅助专门的关系运算符进行操作逻辑运算符辅助专门的关系运算符进行操作。

ai领域探索者,欢迎一起交流,目前从事具身智能行业。 2万+

数据库系统概论核心考点:关系代数、范式、事务与SQL实战解析

关系型数据库是现代应用系统的数据基石,其核心在于理解数据建模的逻辑基础——关系代数提供形式化查询表达能力,函数依赖与范式理论支撑数据结构设计的合理性,ACID事务保障并发场景下的数据一致性,而SQL则是连接理论与工程落地的关键接口。掌握自然连接与除运算的语义映射、3NF分解的无损性验证、隔离级别对幻读与不可重复读的影响,以及基于EXPLAIN的执行计划调优方法,不仅能应对《数据库系统概论》期末考核,更是后端开发、DBA及数据架构岗位必备的底层能力。本文聚焦关系型数据库原理与实践的交汇点,覆盖从理论推导到真实

weixin_31569671的博客 177

数据库关系代数练习

老师 您上课布置的那道题我不会,主要空数据写不来。没有头绪。

li19980的博客 823

【低轨】Starlink星链-Ku波段OFDM信号同步机制与PNT应用潜力

本文深入解析了Starlink星链Ku波段OFDM信号的同步机制及其在定位、导航与授时(PNT)领域的应用潜力。研究发现,其信号帧内嵌的同步序列具有相位恒定特性,支持超长相干积分,可在极低信噪比下实现高精度伪距测量,为利用低轨卫星通信信号实现高精度PNT服务提供了新的技术路径。

weixin_29250403的博客 730

430单片机实现三人投票表决器_基于单片机的五人表决器的设计

姚海云+马野摘要:本设计利用51单片机,按键开关模块,数码管显示模块和LED模块来实现一个简单的五人表决器的功能。按键开关模块中的键2~键6表示五个人,由5个人来投票,当同意的票数大于或者等于3人时,数码管显示同意的人数,说明表决通过。当表决的人数小于3时,数码管显示同意的人数。关键词:表决器;单片机;流水灯;数码管;矩阵键盘;时钟中图分类号:TP391 文献标识码:A 文章编号:1009-304...

weixin_33277215的博客 2558

Mysql-SQL查询(水手预订船案例)

学习视频:东南大学-徐立臻-数据库原理 drop database if exists navigator; # 创建数据库 create schema navigator; use navigator; # 水手表 create table saliors ( sid int PRIMARY KEY, sname VARCHAR ( 20 ), rating int, age fl...

happyyouli's blog 3514

火星遥感数据的获取与处理工具安装详解

有关火星遥感影像数据的那些事...

FengYingLuo的博客 5572

数据库SQL练习(一)

好久没有复习SQL语句了,今天简单温习一下。 SQL语句执行顺序 语法顺序:select–from–where–group by–having–order by 执行顺序:from–where–group by–having–select–order by (select的顺序与语法顺序稍微不一样) from: 从哪个数据表检索数据 where: 过滤表中数据的条件 group by: 如何将上面过滤出的数据分组 having: 对上面group by已经分组的数据进行过滤的条件 select: 查看结果集

qq_42873760的博客 2334

File Load Error for Untitled.ipynb Unhandled error 解决方案

本文主要介绍了File Load Error for Untitled.ipynb Unhandled error 解决方案,希望能对使用jupyter notebook的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 1万+

把 Custom Business Configurations 变成你的定制化维护台:Business Configuration Maintenance Object 设置全解

摘要:SAP BTP的Business Configuration(BCMO)为ABAP环境提供标准化的配置维护方案,通过RAP对象暴露为OData V4服务,自动生成Fiori elements维护界面,省去单独开发应用的成本。关键配置包括:Service Configuration定义业务名称和分组;List Report控制初始加载和视图变体;Object Page配置布局(Tabs/Page)和编辑权限;Table Settings选择表格类型(Grid/Responsive)和创建模式(Inlin

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 170

boat-sailor 数据库SQL语言上机实验问题

【boat-sailor】 saliors(sid,sname,rating,age),其中sid表示水手号,sname表示水手姓名,rating表示水手级别,age水 手年龄; boats(bid,bname,color) 其中bid表示船号,bname表示船名,color表示船的颜色; reserves(sid,bid,day) 其中sid表示水手号,bid表示船号,day表示水手

u012539330的专栏 4094

AI上推荐 之 多任务loss优化(自适应权重篇)

1. 写在前面 在多任务学习中,往往会将多个相关的任务放在一起来学习。例如在推荐系统中,排序模型同时预估候选的点击率和浏览时间。相对于单任务学习,多任务学习有以下优势: 多个任务共享一个模型,占用内存量减少; 多个任务一次前向计算得出结果,推理速度增加; 关联任务通过共享信息,相互补充,可以提升彼此的表现。 前面的一篇文章,主要是从模型结构的角度聊了下多任务学习,介绍了工业界非常经典也常用的MMOE模型,然而,对于多任务学习, Loss的优化也非常重要, 因为我们知道通过多个目标去指导网络进行统一的训练

Miracle8070 1万+

数据库系统之:关系代数详解-超详细

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 数据库系统之:关系代数前言一、关系代数是什么?二、关系代数1.关系代数--并、交、差2.关系代数--笛卡尔积、投影、选择4.关系代数--选择扩展:自然连接和等值连接的联系和区别等值连接自然连接总结 前言 关系代数是属于软件设计师考试中第三单元数据库系统中的一个高频考点,常考的考试场景有: 1、给定代数式,求取计算结果或其结果的特性,找到等价表达式。 2、常考的关系代数是笛卡尔积、选择、投影组合与自然连接的等价表示。 3、SQL语句 S

JavaEEKing的博客 5万+

获取抖音中x-secsdk-csrf-token的方法

获取抖音中x-secsdk-csrf-token的方法

sh_moranliunian的博客 2017

openclaw通俗入门系列4——智能体工作区

工作区 = 智能体的家,存放它的性格、记忆、技能。默认不是牢笼(可以用沙箱隔离)。建议放到私有 Git 备份,但绝对不要提交密钥!

m0_60605453的博客 462

数据库SQL(七):Relational Algebra(关系代数)

从本篇文章内容开始,逐渐深入探究高级数据库知识,内容难度有显著提升,我努力用最清楚的方式解释,量力而行。 文章目录IntroductionSelect OperationProject OperationUnion OperationSet Difference OperationCartesian-Product Operation Introduction 关系代数的基本运算:union, intersection, selection, projection, Cartesian product 和r

IamCerian的博客 7591

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

数据库:掌握关系代数

关系代数是一种抽象的查询语言,是关系数据操纵语言的一种传统表达方式,它用关系的运算来表达查询。运算对象、运算符、运算结果是运算的三大要素。关系代数的运算对象是关系,运算结果亦为关系。关系代数中使用的运算符包括4类: 集合运算符:∪、-、∩、× 专门的关系运算符:σ、Π、∞、÷ 比较运算符:>、≥、<、≤、=、≠ 逻辑运算符:非、与、或 关系代数的运算按运算符的不同可分为传统的集...

王山山 945

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

【数据库】模块一:数据库基础与关系代数

本文介绍了数据库系统的三级模式结构和关系代数运算。三级模式包括外模式(用户视图)、模式(全局逻辑结构)和内模式(物理存储方式),通过两级映像实现逻辑独立性和物理独立性。关系代数部分讲解传统集合运算(并、交、差、笛卡尔积)和专门关系运算(选择、投影、连接),重点说明自然连接会去除重复列的特性。这些概念对理解数据库架构和应对银行笔试题目尤为重要。

m0_56800366的博客 298

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

数据库(三):关系代数

关系代数是关系数据库的理论基础,理解它对于深入掌握SQL和数据库查询优化至关重要。关系代数(Relational Algebra)是一种抽象的查询语言,它使用对关系的运算来表达查询。│ 关系代数的本质 ││ ││ 输入:一个或多个关系(表) ││ ↓ ││ 运算:对关系进行各种操作 ││ ↓ ││ 输出:一个新的关系(表) ││ ││ 核心思想:关系进 → 关系出(封闭性) ││ │并运算是将两个关系的所有元组合并成一个关系,同时去除重复元组。

clearhenry的博客 1168

数据库系统:关系代数

……

u013669912的博客 963

数据库理论:关系代数与 SQL

目录前言关系代数选择语句投影语句连接语句除法(重要⚠)关系代数例题SQL视图模式匹配聚合,分组与HAVING子查询SQL 例题 前言 关系代数通过符号化的语言,来描述数据库的行为关系,相当于简化版的 SQL。比如并,交,差,笛卡尔积,除法,select 语句等等。 SQL 则是结构化查询语句,相比于关系代数,更方便被计算机识别的一种查询语言。 其余的复习笔记: 数据库理论:函数式依赖,无损拆分,依赖保留拆分与数据库范式 数据库理论:ER模型,关系转换,并发控制与冲突可串行化调度 关系代数 交,并,差,笛卡

AKGWSB 's blog 6522

数据库关系代数实战指南:从选择到外连接的深度解析

本文深入解析数据库关系代数的核心操作,从基础的选择与投影,到多表连接的笛卡尔积、θ连接与自然连接,并重点剖析了外连接的应用场景。通过实战案例,帮助读者理解SQL查询的底层逻辑,掌握构建高效、准确数据查询的“内功心法”,提升数据库操作与性能优化能力。

vv45678的博客 707

关系代数:数据库查询的数学基石与实战解析

关系代数术语数据库对应概念定义说明域(Domain)字段数据类型一组具有相同数据类型的值的集合,是属性的取值范围。例如:性别域={男,女},年龄域={18-60的整数}。属性(Attribute)表的字段(列)关系中的一列,每个属性对应一个域,有唯一的属性名。例如:学生表的“学号”“姓名”“年龄”均为属性。元组(Tuple)表的记录(行)关系中的一行,由若干属性值组成,对应一条具体的数据记录。例如:学生表中“学号001、姓名张三、年龄20”即为一个元组。关系(Relation)

qq_43402143的博客 832

《数据库》关系代数例题资源文件:助力数据库学习,掌握关系代数核心概念

《数据库》关系代数例题资源文件:助力数据库学习,掌握关系代数核心概念 去发现同类优质开源项目:https://gitcode.com/ 项目介绍 《数据库》关系代数例题资源文件是一个专注于数据库关系代数学习的开源项目。它提供了一系列针对数据库关系代数简单查询部分的例题,旨在帮助读者深入理解数据库关系代数的基本概念,并通过实际操作提升解决实际问题的能力。 项目技术分析 本项目主要使用文本格式存储例题...

gitblog_06721的博客 853
上一篇: Java入门
下一篇: 2018年数学建模校赛
FantasticGold
博客等级 码龄10年 15粉丝 45原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值