chapter03_关系数据库_1_关系代数

  • 对关系的运算可分为

    (1) 关系代数运算

    1° 传统的集合运算

    2° 专门的关系运算

    (2) 关系演算

    1° 元组关系演算

    2° 域关系演算

  • 传统的集合运算

    (1) 并

    Q = R∪S 代表R关系中的所有元组和S关系中的所有元组合在一起形成新关系Q

    (2) 差

    Q = R - S 的结果是属于R但不属于S的所有元组构成Q

    (3) 交

    Q = R∩S 的结果是既属于R又属于S的所有元组构成Q

    其中交运算并不是必须运算,可以表示为 R∩S = R - (R - S)

    (4) 笛卡尔积

    Q = RxS 代表R中的所有元组和S中的所有元组进行拼接。

    设关系R有p个属性,m个元组;关系S有q个属性,n个元组。则Q有 (p+q)个属性,m*n个元组

  • 专门的关系运算

    (1) 选择

    从关系中选择满足一定条件的元组子集(即行的子集)

    (2) 投影

    从关系中选取某些特定的列(即列的子集)

    (3) (内)连接

    两个关系的连接是其笛卡尔积的子集。

    1° 条件连接

      将两个关系中满足某个条件的元组拼接起来形成新元组。
    
      其中,__等值连接__是两个关系的某个属性值的相等比较,其他的包括大于连接、小于连接等称为__不等值连接__
    

    2° 自然连接

      两个关系在共同属性上的等值连接。如果两个关系中有一个以上的同名属性,它们必须在这些属性上的值都相等时,两个元组才能连接;
    
      若两个关系无共同属性,则它们的自然连接的结果等于它们的笛卡尔积
    

    (4) 除法

      Q = R ÷ S,则Q中的属性是R的属性去掉和S的公共属性;元组结果是使得Q的元组和S的元组进行自然连接(其实此时等价笛卡尔积)所形成的是R的最大子集
    
  • 扩展的关系运算

    (1) 属性重命名

      __利用属性重命名可以把一个关系作为两个关系运算__
    

    (2) 外连接

    外连接的结果是(内)连接的超集,既包括了满足连接条件的元组,也包含了没有被连接的元组

      1° 左外连接
    
      连接的结果包含了左边关系中不满足连接条件的元组,在__这些元组对应右边关系的属性上的值为空__。
    
      2° 右外连接
    
      连接的结果包含了右边关系中不满足连接条件的元组,在这些元组对应左边关系的属性上的值为空。
    
      3° 完全外连接
    
      连接的结果既包含了左边关系中不满足连接条件的元组,也包含了右边关系中不满足连接条件的元组。即
    
      完全外连接 = 左外连接 ∪ 右外连接
    
  • 在关系代数运算中,并、差、笛卡尔积、选择、投影是基本关系代数运算,其他的运算可以由这些基本运算表示

你可能感兴趣的:(chapter03_关系数据库_1_关系代数)