专门的关系运算


(1) R,t∈R,t[Ai]
设关系模式为R(A1,A2,…,An)
它的一个关系设为R
t∈R表示t是R的一个元组
t[Ai]则表示元组t中相应于属性Ai的一个分量

(2) A,t[A], A(上面有一横)
若A={Ai1,Ai2,…,Aik},其中Ai1,Ai2,…,Aik是A1,A2,…,An中的一部分,则A称为属性列或属性组。
t[A]=(t[Ai1],t[Ai2],…,t[Aik])表示元组t在属性列A上诸分量的集合。
A(上面有一横)则表示{A1,A2,…,An}中去掉{Ai1,Ai2,…,Aik}后剩余的属性组。

(3) tr ts(上面有一个弧)
R为n目关系,S为m目关系。
tr ∈R,ts∈S, tr ts(上面有一个弧)称为元组的连接。
tr ts(上面有一个弧)是一个n + m列的元组,前n个分量为R中的一个n元组,后m个分量为S中的一个m元组。

(4)象集Zx
给定一个关系R(X,Y),X和Y为属性组。
当t[X]=x时,x在R中的象集(Images Set)为:
Yx={t[Y]|t ∈R,t[X]=x}
它表示R中属性组X上值为x的诸元组在Y上分量的集合

学生-课程数据库:p79-80
学生关系Student、课程关系Course和选修关系SC

  • x1在R中的象集
    Zx1 ={Z1,Z2,Z3},
  • x2在R中的象集
    Zx2 ={Z2,Z3},
  • x3在R中的象集
    Zx3={Z1,Z3}



1. 选择

  • 选择又称为限制(Restriction)
  • 选择运算符的含义
    在关系R中选择满足给定条件的诸元组
    σF( R ) = {t|t∈R∧F(t)= ‘真’}
    F:选择条件,是一个逻辑表达式,取值为“真”或“假”
    基本形式为:X1θY1
    θ表示比较运算符,它可以是>,≥,<,≤,=或<>
    选择运算是从关系R中选取使逻辑表达式F为真的元组,是从行的角度进行的运算

    例:

2. 投影

从R中选择出若干属性列组成新的关系
πA( R ) = { t[A] | t ∈R }
A:R中的属性列

投影操作主要是从列的角度进行运算

投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组(避免重复行)

例:查询学生的姓名和所在系。
即求Student关系上学生姓名和所在系两个属性上的投影
πSname,Sdept(Student) πSdept(Student)
π2,5(Student) π5(Student)
查询学生的姓名和所在系。
即求Student关系上学生姓名和所在系两个属性上的投影
πSname,Sdept(Student) πSdept(Student)
π2,5(Student) π5(Student)

3.除运算

给定关系R (X,Y) 和S (Y,Z),其中X,Y,Z为属性组。
R中的Y与S中的Y可以有不同的属性名,但必须出自相同的域集。
R与S的除运算得到一个新的关系P(X),
P是R中满足下列条件的元组在 X 属性列上的投影:

元组在X上分量值x的象集Yx包含S在Y上投影的集合,记作:
R÷S={tr[X]|tr∈R∧πY(S)∈Yx}
Yx:x在R中的象集,x = tr[X]

除操作是同时从行和列角度进行运算

例: 设关系R、S分别为下图的(a)和(b),RS的结果为图©

例:由选课关系SC、课程关系C求下表SC÷CC

数据库系统概论 关系代数:专门的关系运算相关推荐

  1. 数据库系统概论--读书笔记--8 关系运算: 选择 投影 连接 除运算

    专门的关系运算: 选择 投影 连接 除运算 1.设关系模式为R(A1,A2,⋯ ,An)R(A_1,A_2,\cdots,A_n)R(A1​,A2​,⋯,An​), 一个关系设为R.t∈Rt\in R ...

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

    文章目录 1.关系代数概述 1.1 传统的集合运算 1.2 专门的关系运算 1.2.1 选择运算 1.2.2 投影(Projection) 1.2.3 连接(Join) 1.2.4 两类常用连接运算 ...

  3. 数据库系统概论:第九章 关系查询和关系优化

    查询优化一般可以分为代数优化和物理优化.代数优化是指关系代数表达式的优化,物理优化指的是通过存取路径和底层操作算法的选择进行的优化. 9.1 关系数据库系统的查询处理 9.1.1 查询处理步骤 1. ...

  4. 关系代数——附加的关系运算(1)

    关系代数的基本运算足以表达任何关系代数查询.但是如果只用这些运算,有时候某些查询的表达会显得无比冗长.为了简化查询,我们定义附加的一些运算,它们不能增加关系代数的表达能力,却可以简化一些常用的查询. ...

  5. 《数据库系统概念》9-附加关系运算

    2019独角兽企业重金招聘Python工程师标准>>> ​除了基本的关系操作,还有一些附加(Additional)的操作,因为如果只用基本运算,有些表达式会比较繁琐,而附加操作是对某 ...

  6. 数据库系统概论--第六章 关系数据理论

    问题的提出 一个关系模式应该是一个五元组:R(U,D,DOM,F) 这里: 关系名R是符号化 的元组语义. U为一组属性. D为属性组U中华的属性所来自的域. DOM为属性到域的映射. F为属性组U上 ...

  7. 《数据库系统概论》6.0——关系数据理论 大学生笔记

    文章目录 1.思维导图 2.问题提出 (1) 数据库规范化理论发展 (2)概念回顾 (3)关系模型的形式化定义 (4)数据依赖 定义 分类 (5)数据依赖F对关系模式的影响 (**1)数据冗余(Dat ...

  8. 数据库系统概论——函数依赖、码和范式(1NF、2NF、3NF、BCNF)详解

    文章目录 概念回顾 1.函数依赖的定义 1.1 平凡函数依赖和非平凡函数依赖 1.2 完全函数依赖和部分函数依赖 1.3 传递函数依赖 2.码 2.1 主码和候选码 2.1主属性与非主属性 2.2 全 ...

  9. 数据库的关系运算和完整性约束

    对关系数据库进行查询统计时,需要查询到用户感兴趣的数据,这就需要对关系及关系间进行一定的运算.本篇主要讲述关系运算和关系的完整性约束,理解关系操作的含义,了解传统的集合运算,掌握关系代数中基本关系运算 ...

最新文章

  1. Bind和Eval的区别详解
  2. vb调用vc dll
  3. 对字符串数组排序,使所有变位词都相邻(C++)
  4. 幼儿园带括号算式口诀_幼教必备:幼儿园17首数学儿歌收藏!
  5. 设计测试用例的7点原则
  6. python内置max()、min()函数与Numpy自带的max()、min()函数性能对比分析
  7. 深圳CPDA数据分析认证:数据分析知识很难学么?
  8. Linux下C++ libtorrent库使用
  9. 至强服务器虚拟机黑苹果,[经验] AMD/Intel CPU VMware虚拟机安装黑苹果
  10. 教你炒股票24:MACD对背弛的辅助判断
  11. 百度地图自定义图标不显示问题解决方案
  12. 程序员装机必备利器列表
  13. macOS、Linux CentOS 、Docker安装部署canal-server(canal-deployer)服务
  14. 常见英文缩写小节-江晚正愁余-iteye技术网站
  15. python pyqt5 股票分时_pythonpyqt5股票分时:股票风险与提示_XAC配资之家
  16. Redis单线程瓶颈分析
  17. 如果机器可以深度学习,人类的学习有何意义
  18. 用java的swing组件实现简易的图书管理系统
  19. jsonobject返回map_如何把JSON对象转为map对象
  20. Arista 交换机升级手册

热门文章

  1. JavaScript数组函数
  2. android 自定义悬浮框,Android自定义悬浮窗
  3. python基础语法测评_Python基础语法测评(A1卷)
  4. win10系统更新服务器失败怎么回事,Win10总是更新失败怎么办?Windows更新出现更新失败的解决方法...
  5. 数字密码锁的详解之梳理F4总结系列逻辑篇(三)
  6. 基于FPGA的电子密码锁
  7. 身份证照片比对,身份鉴别,人脸实名
  8. PAT日志 1035
  9. App Store 隐私政策网址
  10. 28335之GPIO输出