3.5数据库系统-关系代数、自然连接、性能问题

3.5数据库系统-关系代数、自然连接、性能问题

  • 关系代数
  • 自然连接
  • 性能问题

关系代数

关系代数是针对关系模式所做的代数运算,在考试中基本上只出现几种,并集、交集、差集、笛卡儿积、投影、选择、连接几种,其它的运算在考试并不怎么涉及。

3.5数据库系统-关系代数、自然连接、性能问题_第1张图片
投影用π表示,表示选择哪些列,即select语句中展示的column name。
选择用σ(西格玛的小写)表示,表示选择哪一个元组行,即select展示的结果集的内容。

自然连接

是连接的运算,连接可以有多种,考试中考察较多的是自然连接,自然连接是特殊的等值连接,符号是⋈。自然连接的结果,从结果上看:
属性列个数是二者之和,减去重复列;
元组行个数是同时满足,相同属性列必须同时取值相等。

3.5数据库系统-关系代数、自然连接、性能问题_第2张图片

π1,2,3,5(σ1=4(S1×S2)),(S1×S2)先两个表做笛卡尔积,然后σ1=4筛选数据,然后投影π1,2,3,5,选择列进行展示。

σ1=4(π1,2,3,5(S1×S2)),(S1×S2)先两个表做笛卡尔积,然后投影π1,2,3,5,选择列进行展示,然后σ1=4筛选数据,这时,由于重复字段,所以4表示的是StuClass这个字段,不是S2的StuId,所以这个表达式是错的。

性能问题

①一般认为自然连接是优于笛卡尔积的
②在考虑提升SQL语句性能的时候,或者是关系代数新能的时候,会尽可能的取压缩运算表,也就是小表驱动大表,同时需要笛卡尔积的时候,尽可能在不影响结果的情况下,先进行数据筛选,减少笛卡尔积的数据量,从而提高性能。

你可能感兴趣的:(架构师考试,数据库,关系代数,自然连接)