关系代数(Relational Algebra)——极简教程

作者: 光剑书架上的书 | 来源:发表于2022-04-07 03:32 被阅读0次

    一切皆是关系。

    什么是关系?

    • 事物之间相互作用、相互影响的状态。
    • Relation (philosophy), links between properties of an object.
    • Relation (mathematics), In mathematics, a binary relation is a general concept that defines some relation between the elements of two sets. It is a generalization of the more commonly understood idea of a mathematical function.

    那么,关系数据库中的“关系”,到底是什么?

    关系代数

    关系代数是过程查询语言,它以关系为输入,生成关系为输出。关系代数主要为关系数据库和SQL提供理论基础。其中,
    R*表示一个关系。输入关系,输出关系。
    函数 f 表示关系算子。关系算子就是从关系到关系的映射。
    关系运算中,支持的算子有:f = Cartesian product(×)、Projection (Π)、Selection (σ)、Rename (ρ)、join (⋈) 、Division (÷)等。

    在关系数据库理论中,最初由EF Codd定义的关系是:

    关系 = 一组元组 Tuple (d 1 , d 2 , ..., d n )

    其中,每个元素 d j是 D j的成员,D 是一个数据域。
    元组中每个元素都被称为一个属性值(列值)。
    一个属性是与域配对的名称(现在通常称为类型或数据类型)。


    https://www.seas.upenn.edu/~zives/03f/cis550/codd.pdf

    在关系数据库的数据库语言SQL中,关系由表表示,其中表的每一行表示一个元组,每个属性的值形成一列。

    Relation=Table, Tuple=Row, Attribute = Column

    关系模型理论

    First introduced by Ted Codd(1970), “关系数据库之父”。
    Terminologies:
    a. Relation
    b. Tuple
    c. Attributes
    d. Domain
    e. Relation Schema
    f. Degree (or arity) of a relation
    g. Cardinality
    h. Relational Database Schema
    i. Relational database state (or relation instance)

    1923年8月23日,Codd生于英格兰多塞特郡的波特兰。在牛津学习数学与化学后, 他作为一名英国皇家空军的飞行员参加了第二次世界大战。
    1948年(25岁),他来到纽约面试IBM,成为一名程序员。
    1965年(42岁),获得密歇根大学计算机科学博士学位。
    1967年(44岁),回到IBM上班。
    1981年(58岁),科德因在关系型数据库方面的贡献获得了图灵奖。
    2003年4月18日,科德在家中死于心力衰竭,享年 79 岁。

    参考资料

    ClickHouse高级数据查询SQL: WITH/JOIN/IN/INTO OUTFILE/嵌套子查询/交并差计算等:https://mp.weixin.qq.com/s?__biz=MzA5OTI2MTE3NA==&mid=2658341869&idx=1&sn=95d9c41e186667ff6276822f7f2e3553&scene=58&subscene=0

    ClickHouse 使用EXPLAIN 分析 SQL 执行计划:https://mp.weixin.qq.com/s?__biz=MzA5OTI2MTE3NA==&mid=2658341869&idx=2&sn=dba0c8b7631cf772c4d0868f7585d003&scene=58&subscene=0

    相关文章

      网友评论

        本文标题:关系代数(Relational Algebra)——极简教程

        本文链接:https://www.haomeiwen.com/subject/nrhjsrtx.html