暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

19级软件班同学看过来……

爱上数据结构 2020-09-28
373

§2.3 关系代数之传统的集合运算

 关系代数——是一种抽象的查询语言,其运算对象是关系,运算结果也是关系,其常用运算符包括四类:

集合运算符:∪(并),-(差),∩(交),X(广义笛卡尔积);

◆专门的关系运算符:σ(选择),∏(投影),∞(连接),*(自然连接),÷(除);

算术比较运算符:>(大于),≥(大于等于),<(小于),≤(小于等于),=(等于),≠(不等于);

逻辑运算符:∧(与),∨(或),┐(非),与或非三个符号在关系代数中的书写形式。

 其中算术比较符和逻辑运算符用来辅助专门的关系运算的。因此关系代数的运算按运算符的不同主要分为两类

▲传统的集合运算:把关系看成元组的集合,以元组作为集合中元素来进行运算,其运算是从关系的“水平”方向即行的角度进行的。包括并、差、交和广义笛卡尔积等运算。

▲专门的关系运算:不仅涉及行运算,也涉及列运算,这种运算是为数据库的应用而引进的特殊运算。包括选取、投影、连接和除法等运算。

§2.3.1 传统的集合运算(并、差、交和广义笛卡尔积)

相容关系:关系R、S具有相同的度n;且R中第i个属性和S中第i个属性来自同一个域,则说关系R、S是相容的。相容关系可进行并 、差-、交∩运算。


1. 关系的并( ∪)运算

      RS={t|tRtS}     可实现关系数据库记录的添加。

      结果仍然是元组的集合,由属于R或S的元组组成。  

      即由R与S元组合并,删去重复元组组成一个新关系。

2.  关系的差(- )运算

      R-S={t|tR┐tS}    可实现关系数据库记录的删除。

      结果由属于R而不属于S的元组组成。

      即从R中删去在S中出现的元组组成一个新关系。

3. 关系的交( ∩ )运算

      R∩S={ t |  t∈R∧t∈S}

      结果由既属于R又属于S的所有元组组成。等价于 R-(R-S)

4. 广义笛卡尔积

    两个分别为n目和m目关系R和S的广义笛卡尔积是一个(n+m)列的元组的集合,元组的前n列是关系R的一个元组,后m列是关系S的一个元组。若R有k1个元组,S有k2个元组,则关系R和关系S的广义笛卡尔积有k1*k2个元组,记作:

      R×S={ trts | trR,tsS}

     结果由R中任一元组和S的每个元组连接而组成。

     关系的广义笛卡尔积可用于两关系的连接操作。


文章转载自爱上数据结构,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论