前言
关系代数通过符号化的语言,来描述数据库的行为关系,相当于简化版的 SQL。比如并,交,差,笛卡尔积,除法,select 语句等等。
SQL 则是结构化查询语句,相比于关系代数,更方便被计算机识别的一种查询语言。
其余的复习笔记:
关系代数
交,并,差,笛卡尔积等符号,和数学上的符号完全一致,只是运算的单位不是集合而是表。
交运算取两张表相同的字段。并运算类似,也是合并相同的字段,同时加入不相同的字段:
差运算则是减去两者的交集。笛卡尔积则组合任意的属性:
选择语句
关系代数中用符号 σ(西格玛,sigma)来描述选择语句。此外我们可以在 select 的同时,添加限制条件(即 where),使用例如下:
σ 选 择 条 件 ( 数 据 表 名 称 ) \sigma_{选择条件}(数据表名称) σ选择条件(数据表名称)
比如:
σ A G E = 19 ( s t u d e n t ) \sigma_{AGE=19}(student) σAGE=19(student)
就等价于:
select * from student where AGE=19;
投影语句
在关系代数中的投影语句相当于 SQL 中的字段筛选,可以选择特定的字段进行查询,格式如下:
π 属 性 ( 表 名 ) \pi_{属性}(表名) π