数据库几种连接

等值连接

使用”=”关系将表连接起来的查询,其查询结果中列出被连接表中的所有列,包括其中的重复列。

SELECT XSB.* , CJB.*
 FROM  XSB , CJB
 WHERE XSB.学号 = CJB.学号

自然连接

数据库应用中最常用的是“自然连接”,它在目标列中去除相同的字段名。

SELECT XSB.* , CJB.课程号, CJB.成绩
FROM XSB , CJB
WHERE XSB.学号= CJB.学号

等值连接与内连接的区别

1)等值连接中不要求相等属性值的属性名相同,而自然连接要求相等属性值的属性名必须相同,即两关系只有在同名属性才能进行自然连接。
2)等值连接不将重复属性去掉,而自然连接去掉重复属性,也可以说,自然连接是去掉重复列的等值连接。

内连接

指定了INNER关键字的连接是内连接,内连接按照ON所指定的连接条件合并两个表,返回满足条件的行

SELECT  *
 FROM  XSB  INNER  JOIN  CJB 
   ON  XSB.学号 =CJB.学号

外连接

指定了OUTER关键字的为外连接,外连接的结果表不但包含满足连接条件的行,还包括相应表中的所有行。

左外连接

结果表中除了包括满足连接条件的行外,还包括左表的所有行。

 SELECT XSB.* , 课程号
    FROM  XSB  LEFT OUTER JOIN CJB 
   ON  XSB.学号 = CJB.学号

右外连接

结果表中除了包括满足连接条件的行外,还包括右表的所有行。

全外连接

结果表中除了包括满足连接条件的行外,还包括两个表的所有行。

自连接

自连接作为一种特例,可以将一个表与它自身进行连接,称为自连接。若要在一个表中查找具有相同列值的行,则可以使用自连接。使用自连接时需为表指定两个别名,且对所有列的引用均要用别名限定。

交叉连接

交叉连接实际上是将两个表进行笛卡尔积运算,结果表是由第一个表的每一行与第二个表的每一行拼接后形成的表,称为‘笛卡尔积表’,结果表的行数等于两个表的行数之积。

你可能感兴趣的:(数据库)