数据库第二章 关系代数及其优化问题

2.2 关系代数

2.2.1 关系代数的5个基本操作

  • 并(要求R和S有相同的关系模式)
  • 笛卡尔积
  • 投影
  • 选择
    在这里插入图片描述
    在这里插入图片描述
  • 优先级:括号、 θ \theta θ、非、与、或

2.2.2 关系代数的4个组合操作

  • 连接
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • 自然连接

  • 除法(用于求全部、所有)

2.2.3 补充操作

  • 改名

  • 广义投影

  • 赋值

  • 外连接
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • 外部并

  • 半连接

  • 聚集操作

  • 这些看书上例子

2.2.4 应用实例

在这里插入图片描述

2.4 关系代数表达式的优化

  • 启发式优化方法与存储技术无关,主要讨论如何合理安排操作顺序

  • 笛卡尔积和连接操作最花费时间

  • 启发式规则

    • 尽可能早地执行选择操作
    • 尽可能早地执行投影操作
    • 避免直接做笛卡尔积,把笛卡尔积之前和之后的一连串选择和投影合并起来一起做
  • 通常选择操作早于投影是更好的,因为选择可以减少很多元组

  • 关系代数表达式的启发式优化是由DBMS的DML编译器完成的

  • 启发式优化算法

    • 分解成级联式选择

    • 尽可能把每个选择往下推倒最早可以执行的地方

    • 尽可能的把投影操作往下推

    • 把选择和投影合并成单个选择、单个投影或一个选择跟一个投影

    • 分组

    • 生成序列
      (来自B站 Nancy是宝藏)

      在第三步筛选投影时,从上往下看

    B站 语法树优化讲解的比较清楚的视频

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值