您的位置:首页 > 数据库

跟小博老师一起学习数据库 ——外连接

2017-04-12 13:31 387 查看
昨天小傅老师和大家聊了外连接的概念和语法,今天我们一起就外连接做点练习。

先看下要使用的表(emp、dept、salgrade)结构和表关系



l 全连接


 

我们看到以上的语句把emp、dept表内的记录交叉组合,产生了迪卡尔积效应。


 

l 左外连接


 

从结果上可看到emp表中最后一条虽没有部门编号也查询出来,符合左外连接的定义。


 

l 右外连接


 

右表dept中编号为40的部门虽没有员工也给查询了出来。


 

l 自连接

以上查询中连接的都不是不同表,而所谓的自连接是参与连接的表都是同一张表,只是给表取不同的别名。

还记得之前小傅老师给大伙留的一个题目:

Ø 查询员工的基本信息和他的直级上领导姓名

由于领导也是员工信息也保存在emp表内,针对这类题目就可采用连接处理。


 

结果


 

总结

表连接分为:

1.CROSS JOIN:产生迪卡尔积。

2.INNERT JOIN:查询所有匹配的项。

3.OUTER JOIN

   外连接分为:

     1) LEFT OUTER JOIN/LEFT JOIN:显示左表的所有项,右表没有匹配的项,则以null显示。

     2) RIGHT OUTER JOIN/RIGHT JOIN:显示右表的所有项,左表没有匹配的项,则以null显示。

     3) FULL OUTER JOIN/FULL JOIN:显示所有匹配和不匹配的项,左右两张表没有匹配的,都以null显示。

4.SELF JOIN:把一张表取两个别名,当做两张表来使用,自己和自己关联。


 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息