调侃数据库4.1:关系代数(简单不得了的教程)

上次我们介绍的是关系模型的一些东西,而这次主要来讲关系代数

《调侃数据库4.1:关系代数(简单不得了的教程)》

先上图,大家理解理解

《调侃数据库4.1:关系代数(简单不得了的教程)》
《调侃数据库4.1:关系代数(简单不得了的教程)》

以下都以此举例

《调侃数据库4.1:关系代数(简单不得了的教程)》
《调侃数据库4.1:关系代数(简单不得了的教程)》
《调侃数据库4.1:关系代数(简单不得了的教程)》

1 五个基本操作

🔥Selection

  • ρ predicate (R)
  • 罗列R中满足条件(predicate)的数据—水平

    《调侃数据库4.1:关系代数(简单不得了的教程)》

🔥Projection

  • πcol1, . . . , coln (R)
  • 定义R的垂直子集的关系,提取指定属性的值并消除重复—垂直

    《调侃数据库4.1:关系代数(简单不得了的教程)》

🔥Cartesian product(笛卡尔积)

  • RXS
  • R关系与S关系的串联关系

    《调侃数据库4.1:关系代数(简单不得了的教程)》

🔥Union

  • RUS
  • 与数学中的并关系相同

    《调侃数据库4.1:关系代数(简单不得了的教程)》

🔥Set difference

  • R-S
  • 在R中消除S

    《调侃数据库4.1:关系代数(简单不得了的教程)》

2 三个派生操作

🔥Join

1. Theta join (θ-join)

《调侃数据库4.1:关系代数(简单不得了的教程)》

《调侃数据库4.1:关系代数(简单不得了的教程)》

《调侃数据库4.1:关系代数(简单不得了的教程)》

2. Natural join

在Client与Viewing的clientNo相同情况下,罗列出clientNo,fNale,lName,propertyNo,comment

《调侃数据库4.1:关系代数(简单不得了的教程)》

《调侃数据库4.1:关系代数(简单不得了的教程)》

3. Outer join

展示那些没有匹配的值

《调侃数据库4.1:关系代数(简单不得了的教程)》

🌺左外连接

Left outer join is join in which tuples from R that do not have matching values in common columns of S are also included in result relation.

《调侃数据库4.1:关系代数(简单不得了的教程)》

将每个元组保持在结果的左关系中

《调侃数据库4.1:关系代数(简单不得了的教程)》

上图,大家注意这个null值选项,左边有值的是PropertyForRent,右边为null,显式左边而不显式右边,这便是左外连接

🌺右外连接

同左外连接类似,显式右关系

🌺全外连接

显式所有关系

🌺Semijoin

《调侃数据库4.1:关系代数(简单不得了的教程)》

《调侃数据库4.1:关系代数(简单不得了的教程)》

🔥Intersection

  • R∩S
  • 留下相同项

    《调侃数据库4.1:关系代数(简单不得了的教程)》

🔥Division

  • R÷S
  • 除法的意思,大家看下前面解释,已经很清楚了

    《调侃数据库4.1:关系代数(简单不得了的教程)》

    保留V内与W相同的项,然后显式这个项所对应的值

今天的东西很多,也是大家需要记住的东西,请各位慢慢消化消化O(∩_∩)O哈哈哈~,不懂的地方请在下面留言

    原文作者:调侃熊
    原文地址: https://www.jianshu.com/p/cea2e509f640
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞