数据库基础(2)选择,投影,连接,除法运算
关系数据库中的选择,投影,连接,除法都是很重要的运算
选择
定义:在关系中选择在指定属性上有确定值的关系的子集。表示为:
选择运算是选择关系中行
的子集,即选择满足条件的元组
例:
1.查询信息系(IS系)全体学生
σ Sdept=‘IS’(Student)
2.查询年龄小于20岁的学生
σ Sage<20(Student)
选择运算的特性:
投影
投影是选取关系中列
的子集。设模式R上关系r,X是R上属性的子集(x就是列),r到 X上的投影r`表示为:
投影操作是从列的角度进行行的运算。投影的结果不是原来的关系,是X中的几列属性。
特别注意
由于投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组,因为取消了某些属性列之后,就可能出现重复行,投影结果中不应该包含重复行
例子:查询学生关系Student中都有哪些系,即查询关系Student上所在系属性上的投影
Student关系如图所示:
Sname | Sdept |
---|---|
李勇 | CS |
刘晨 | CS |
王小明 | MA |
张超 | IS |
求 : π Sdept(Student)
因为Student关系原来有4个元组,但是我们的投影结果需要取消重复的CS元组,因此投影结果只有三个元组:
Sdept |
---|
CS |
MA |
IS |
投影的特性
连接(Join):自然连接,等值连接
定义: 连接也称为θ连接。它是从两个关系的笛卡尔积中选取属性间满足一定条件的元组。
记作:
(θ为比较符: >,<,≥,≤,=,≠)
1.等值连接
θ为 =
符号的连接运算称为等值连接。它是从关系R与S的广义笛卡尔积中选取A , B 属性值相等的那些元组。
(被水印遮住的地方是A=B)
2.自然连接
自然连接是一种特殊的等值连接。它要求两个关系中进行比较的分量必须是同名的属性组,并且在结果中把重复的属性列去掉
表示为: R⋈S={t r⌒ts |tr∈R∧ts∈S∧tr[B]=ts[B]}
(自然连接也可看作是在广义笛卡尔积R×S中选出同名属性上符合相等条件元组,再进行投影,去掉重复的同名属性,组成新的关系。)
所以等值连接和自然连接的区别是
自然连接是去除了重复的属性列的!
例题
求R和S的自然连接,等值连接,以及非等值连接R[C<E]S 的结果
R :
A | B | C |
---|---|---|
a1 | b1 | 5 |
a1 | b2 | 6 |
a2 | b3 | 8 |
a2 | b4 | 12 |
S:
B | E |
---|---|
b1 | 3 |
b2 | 7 |
b3 | 10 |
b3 | 2 |
b5 | 2 |
自然连接:R⋈S
A | B | C | E |
---|---|---|---|
a1 | b1 | 5 | 3 |
a1 | b2 | 6 | 7 |
a2 | b3 | 8 | 10 |
a2 | b3 | 8 | 2 |
等值连接:R[R.B=S.B]S
A | R.B | C | S.B | E |
---|---|---|---|---|
a1 | b1 | 5 | b1 | 3 |
a1 | b2 | 6 | b2 | 7 |
a2 | b3 | 8 | b3 | 10 |
a2 | b3 | 8 | b3 | 2 |
非等值连接:R[C<E]S
A | R.B | C | S.B | E |
---|---|---|---|---|
a1 | b1 | 5 | b2 | 7 |
a1 | b1 | 5 | b3 | 10 |
a1 | b2 | 6 | b2 | 7 |
a1 | b2 | 6 | b3 | 10 |
a2 | b3 | 8 | b3 | 10 |
除法运算(division)
设关系R除以关系S的结果为关系T,则T包含所有在R但不在S中的属性及其值,且T的元组与S的元组的所有组合都在R中
除法的结果可以用计算象集的方法来解决,以一道题为例来说明怎么求除法
例题:已知关系R和S如下,求R➗S的结果
第一步
: 因为R÷S所得到的属性值 是包含于R,但是S不包含的属性, 所以R➗S得到的属性列有(A,B),S在(C,D)属性上的投影为{(c1,d1),(c2,d2)}
第二步
: 关系R中,AB属性可以取值为={(a1,b1),(a2,b2),(a3,b3)}
第三步
: 求象集
- (a1,b1)={(c1,d1),(c2,d2),(c3,d3)}
- (a2,b2)={(c2,d2)}
- (a3,b3)={(c1,d1),(c2,d2)}
第四步
: 从第三步中可以发现,有象集(a1,b1)和(a3,b3)包含了S在(C,D)属性上的投影,所以R÷S={(a1,b1),(a3,b3)}
A | B |
---|---|
a1 | b1 |
a3 | b3 |
数据库基础(2)选择,投影,连接,除法运算相关推荐
- 数据库系统概论--读书笔记--8 关系运算: 选择 投影 连接 除运算
专门的关系运算: 选择 投影 连接 除运算 1.设关系模式为R(A1,A2,⋯ ,An)R(A_1,A_2,\cdots,A_n)R(A1,A2,⋯,An), 一个关系设为R.t∈Rt\in R ...
- 数据库基础面试题-JDBC连接池实现方式
23.JDBC连接池实现方式?(多选题) A. 自定义连接池 B. C3P0 C. C5P0 D. DABP E. DBCP 正确答案是:ABE 数据库基础面试题-中级32题
- mysql关系运算选择投影连接_数据库关系代数操作 并 差 积 选择 投影 连接等操作...
首先我们需要明白,关系代数操作分为下面两种操作 并操作: 首先需要满足并相容性,并相容性指的是:关系R与关系S存在相容性,当且仅当: (1) 关系R和关系S的属性数目必须相同: (2) 对于任意i,关 ...
- mysql关系运算选择投影连接,[转载]选择、投影和连接运算(关系数据库)
一.选择 选择又称为限制,它是在关系R中选择满足给定条件的诸元组,记作: σf(R)={t|t∈R∧F(t)='真'} 其中F表示选择条件,它是一个逻辑表达式,取逻辑值'真'或'假'. 逻辑表达式F的 ...
- 数据库基础原理知识复盘
一.数据库原理:复习时长3h [教材:数据库系统概论(第五版)王珊] 目录 知识点 总结重点 基础篇 绪论 数据,数据库,数据库管理系统,数据库系统: 数据模型,概念,逻辑和物理,层次,网状,关系模型 ...
- Sql学习6-1_数据库基础
数据库基础 一.描述几个概念 1.1 关系型数据库和非关系型数据库 1.1.1 关系型数据库 指采用了关系模型来组织数据的数据库,保持事物的一致性,关系型就是指二维表格模型,一个关系型数据库就是由二维 ...
- 数据库基础---选择,投影,连接,除法运算
转载自:https://blog.csdn.net/Candle_light/article/details/84424034 关系数据库中的选择,投影,连接,除法都是很重要的运算 选择 定义:在关系 ...
- mysql投影和选择区别_关系运算里面,“选择”和“投影”区分?
展开全部 一.性62616964757a686964616fe58685e5aeb931333431356638质不同 1.选择:在关系R中选择满足给定条件的诸元组,形成一个新的关系. 2.投影:从关 ...
- 数据库-——关系代数的除法运算最白话解析
数据库---关系代数的除法运算及易错示例 除法运算 大概数据库中关系运算复杂点的也就是除法运算了,这也可能是很多入门新手数据库学习中遇到的第一个障碍. 接着我们来理清一下. 除法//话不多说,直接开莽 ...
- C#连接达梦数据库基础功公共类
c#程序访问达梦数据库 1.准备数据库驱动 达梦数据库安装完成后路径一般为:C:\dmdbms 找到 C:\dmdbms\drivers\dotNet\DmProvider: 我选择为.net 4. ...
最新文章
- 算法系列15天速成——第二天 七大经典排序【中】
- idea debug只断点当前线程,不阻塞其他线程
- AtCoder AGC039F Min Product Sum (容斥原理、组合计数、DP)
- Shader相关Mask裁切UI粒子特效或者3D模型
- SendInput模拟键盘输入的问题 转
- mysql特殊语句_mysql特殊语句 - BENNEE的个人空间 - OSCHINA - 中文开源技术交流社区...
- Java 常用正则表达式搜集ing
- roseha linux,RoseHA 9.0 for Linux快速安装说明_v2.0-2015-04.pdf
- IT面试经验:简历上项目经验怎么写?3招教你来包装!
- 进销存系统设计说明书
- html 学习笔记(9)
- 饭后Android 第二餐-复选框CheckBox+开关按钮Switch+单选按钮RadioButton
- 终身成长----“成长型思维”
- 2020年6月TIOBE编程语言排名公布
- 基于 RFID 与 ZigBee 智能汽车装配生产线车模追溯系统设计
- Android 7.0 Nougat(牛轧糖)---对开发者来说
- 松翰SN8F5703单片机WDT例程
- 前端vue基于onlyoffice实现在线预览
- kdj指标主要看哪个值_KDJ指标的J值与D值差别
- linux设置密码报错automa,AutomaThemely:根据太阳日出及日落时间自动切换明暗的Gtk主题...
热门文章
- 关于在用Swift开发iOS时如何隐藏NavigationBar和TabBar
- 《Linux命令行与shell脚本编程大全》 第二十二章 学习笔记
- 修改Wordpress插件---advanced-access-manager.1.7.3---
- 14.1宽屏Intel集显调分辨率:无解
- 数据可视化——ECharts基础
- php是一种,php是一种什么类型的语言
- 数学问题(三):最小公倍数、最大公约数
- 一种排序NYOJ 8
- NYOJ759 你知道这个规律吗
- 节点本地范围和链路本地范围_微服务链路追踪——skywalking