前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >数据库基础(四) 关系代数

数据库基础(四) 关系代数

作者头像
宇宙无敌暴龙战士之心悦大王
发布2022-01-10 11:16:33
2.1K0
发布2022-01-10 11:16:33
举报
文章被收录于专栏:kwai

关系代数是一种抽象的查询语言。

运算符

  • 传统的集合运算:并,交,笛卡尔积,差。
  • 专门的关系运算:选择σ,投影π,连接⋈,除运算÷。

传统运算符

用图中例子为例。

1,并

2,交

3,差

4,笛卡尔积

关系运算符

1,选择

选择又称为限制(Restriction)。它是在关系R中选择满足给定条件的诸元组。

人话就是 根据条件选出对应元组

选择条件可以选用下图中的表示符。

例子

2,投影

关系R上的投影是从R中选择出若干属性列组成新的关系。

人话就是 把表中选中的属性和其值提取出来。就是对列操作。

例子

3,除运算

除法运算是一个复合的二目运算。如果把笛卡尔积看作“乘法”运算,则除法运算可以看作这个“乘法”的逆运算。

自然语言

A/B除法就是找出A中特有的列,然后在特有的列上找出包含所有共有列共有行的行。

计算机实现的逻辑语言

1,找出关系R和关系S中相同的属性,即Y属性。在关系S中对Y做投影(即将Y列取出);所得结果如下

第二步:被除关系R中与S中不相同的属性列是X ,关系R在属性(X)上做取消重复值的投影为{X1,X2};

第三步:求关系R中X属性对应的像集Y

根据关系R的记录,可以得到与X1值有关的记录,如图3所示;与X2有关的记录,如图4所示

第四步:判断包含关系

R÷S其实就是判断关系R中X各个值的像集Y是否包含关系S中属性Y的所有值。对比即可发现: X1的像集只有Y1,不能包含关系S中属性Y的所有值,所以排除掉X1; 而X2的像集包含了关系S中属性Y的所有值,所以R÷S的最终结果就是X2

4,连接

连接也称为θ连接,关系R与关系S的连接运算是从两个关系的广义笛卡尔积中选取属性间满足一定条件的元组形成一个新的连接。

人话就是 将两个表中符合条件的元组合在同一张表里。

(一)等值连接

条件为=的连接,例子见下图。

(二)非等值连接

条件为<,>,!=啥的。

(三)自然连接

两个关系中进行比较的分量必须是相同的属性组,并且在结果中把属性重复的列去掉。

图示
(四) 左连接

自然连接的基础上加上左边表上不包含自然连接中所含元组(行)的元组。

(五) 右连接

自然连接的基础上加上右边表上不包含自然连接中所含元组(行)的元组。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-09-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 运算符
  • 传统运算符
    • 1,并
      • 2,交
        • 3,差
          • 4,笛卡尔积
          • 关系运算符
            • 1,选择
              • 例子
            • 2,投影
              • 例子
            • 3,除运算
              • 自然语言
              • 计算机实现的逻辑语言
            • 4,连接
              • (一)等值连接
              • (二)非等值连接
              • (三)自然连接
              • 图示
              • (四) 左连接
              • (五) 右连接
          相关产品与服务
          数据库
          云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档