词条 | 自然连接 |
释义 | 简介第一 自然连接介绍自然连接(Natural join)是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉。而等值连接并不去掉重复的属性列。 第二 自然连接的功能自然连接:在连接条件中使用等于(=)运算符比较被连接列的列值,但它使用选择列表指出查询结果集合中所包括的列,并删除连接表中的重复列。 自然连接与等值连接在连接运算当中,一种最常用的连接是自然连接。 所谓自然连接就是在等值连接的情况下,当连接属性X与Y具有相同属性组时,把在连接结果中重复的属性列去掉。即如果R与S具有相同的属性组Y,则自然连接可记作: R*S={t r⌒ts |tr∈R∧ts∈S∧tr[Y]=ts[Y]} 自然连接是在广义笛卡尔积R×S中选出同名属性上符合相等条件元组,再进行投影,去掉重复的同名属性,组成新的关系。 等值连接与自然连接的区别:1. 等值连接中不要求相等属性值的属性名相同,而自然连接要求相等属性值的属性名必须相同,即两关系只有在同名属性才能进行自然连接。 2. 等值连接不将重复属性去掉,而自然连接去掉重复属性,也可以说,自然连接是去掉重复列的等值连接。 举例例,下面使用等值连接列出authors和publishers表中位于同一城市的作者和出版社: SELECT * FROM authors AS a INNER JOIN publishers AS p ON a.city=p.city 又如使用自然连接,在选择列表中删除authors 和publishers 表中重复列(city和state): SELECT a.*,p.pub_id,p.pub_name,p.country FROM authors AS a INNER JOIN publishers AS p ON a.city=p.city R表 A B C 1 a 3 2 b 6 3 c 7 S表 D B E 2 c 7 3 d 5 1 a 3 一、自然连接是第一步R×S结果是: A B C D B E 1 a 3 2 c 7 1 a 3 3 d 5 1 a 3 1 a 3 2 b 6 2 c 7 2 b 6 3 d 5 2 b 6 1 a 3 3 c 7 2 c 7 3 c 7 3 d 5 3 c 7 1 a 3 就是用R表中的每一项乘以S表中的每一项。 二、选择R.B=S.B的记录: R.A R.B R.C S.D S.B S.E 1 a 3 1 a 3 3 c 7 2 c 7 三、然后去掉相同且值也相同的B属性,最后R∞S的值为: A B C D E 1 a 3 1 3 3 c 7 2 7 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。