zoukankan      html  css  js  c++  java
  • 数据库复习(关系代数)(转)

    关系代数 

    问:为何称为代数?

    答:因为存在操作符和操作数,操作数为表,操作符为交、并等;

    关系代数有分为基于集合的关系代数和基于包的关系代数;



    关系代数的基本操作:并、选择、投影、笛卡尔积、差、重命名;

    基本操作的意思是其他的操作符可以通过基本操作推出;


    注意:如果我们使用并、交、差运算,必须保证R和S的属性集合是相同的,当然如果不同,也可以通过重命名操作;


    补充:

     

    1.自然连接

      

    2. θ连接


    3.重命名 


    表达式树

     


    基于包的关系代数

     

    1.并

    如果元组t在R中出现m次,S中出现n次,则在R∪S中出现m+n次;

    2.交

    如果元组t在R中出现m次,S中出现n次,则R∩S中出现min(m,n)次;

    3.差

    如果元组t在R中出现m次,S中出现n次,则R-S中出现(1)如果m>n,则出现m-n次;(2)如果m<n,则出现0次;

    4.消除重复操作符

    δ(R) 能对关系R消除重复元组;


    5.聚集操作符

    SUM(A)

    AVG(A)

    MIN(A)

    MAX(A)

    COUNT(A)

    其中A为某个属性;

    6.分组操作符

    γ

    包含了以某个属性作为分组属性,还有聚集操作符;


     

    7.排序元组

    τA(R)  表示根据A属性进行排序;


    8.外连接

    左外连接:

    右外连接:

    9.扩展投影运算



    关系代数表达式的分步表示

    因为用一个表达式直接表示复杂的代数表达式会很不清楚,因此我们可以通过分步表示;

    比如:

    可以表示为:

  • 相关阅读:
    设计模式:访问者模式
    设计模式:解释器模式
    设计模式:享元模式
    设计模式:中介者模式
    设计模式:职责链模式
    设计模式:命令模式
    设计模式:桥接模式
    设计模式:单例模式
    设计模式:迭代器模式
    设计模式:组合模式
  • 原文地址:https://www.cnblogs.com/3013218061shang/p/5573514.html
Copyright © 2011-2022 走看看