
自然连接的解释.docx
3页自然连接自然连接(Natural join)是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相 同的属性组,并且在结果中把重复的属性列去掉而等值连接并不去掉重复的属性列分享自然连接的功能自然连接:在连接条件中使用等于(=)运算符比较被连接列的列值,但它使用选择列表指出 查询结果集合中所包括的列,并删除连接表中的重复列自然连接与等值连接简介在连接运算当中,一种最常用的连接是自然连接所谓自然连接就是在等值连接的情况下,当连接属性X与Y具有相同属性组时,把在连接 结果中重复的属性列去掉即如果R与S具有相同的属性组Y,则自然连接可记作:R*S={t r^ts |treRAtseSAtr[Y]=ts[Y]}自然连接是在广义笛卡尔积RxS中选出同名属性上符合相等条件元组,再进行投影,去掉 重复的同名属性,组成新的关系等值连接与自然连接的区别:1. 等值连接中不要求相等属性值的属性名相同,而自然连接要求相等属性值的属性名必须 相同,即两关系只有在同名属性才能进行自然连接2. 等值连接不将重复属性去掉,而自然连接去掉重复属性,也可以说,自然连接是去掉重 复列的等值连接举例例,下面使用等值连接列出authors和publishers表中位于同一城市的作者和出版社:SELECT *FROM authors AS a INNER JOIN publishers AS pON a.city=p.city又如使用自然连接,在选择列表中删除authors和publishers表中重复列(city和state):SELECT *FROM authors NATURAL JOIN publishersR表A B C2 c 73 d 51 a 3一、自然连接是第一步RxS结果是:A B C D B E1 a 3 2 c 71 a 3 3 d 51 a 3 1 a 32 b 6 2 c 72 b 6 3 d 52 b 6 1 a 33 c 7 2 c 73 c 7 3 d 53 c 7 1 a 3就是用R表中的每一项乘以S表中的每一项。
二、 选择R.B=S.B的记录:R.A R.B R.C S.D S.B S.E1 a 3 1 a 33 c 7 2 c 7三、 然后去掉相同且值也相同的B属性,最后RsS的值为:A B C D E1 a 3 1 33 c 7 2 7。
