外连接也是针对于两张表格之间,比如我们实际应用过程会发现,会有一些新员工,还在实习期,并无对应的部门,那若是昨天和大家分享的内连接的话,这些员工信息将无法导出来,我们应该如何操作呢?这个就要用到我们的外连接,外连接可以将某个表格中,在另外一张表格中无对应关系,但是也能将数据匹配出来,具体我们用练习题来说明。
我们先将之前的表格中,修改一个内容,将一个员工的信息部门变成null:
修改员工信息
这样我们再演示一下,查询所有员工的姓名及所在部门,用昨天的内连接方法,先试一下:
select emp.ename,dept.dname
from emp,dept
where emp.deptno=dept.did;
运行之后的结果,只有6个人的信息:
查找员工姓名及部门信息
黄七这个员工的信息,就无法导出来,这样若是在工作中,容易造成信息的遗漏及流失,所以一般情况下,我们会用外连接,而外连接分为左/右外连接,企业中常用的是左外连接,右外连接就是将两张表顺序交换即可,所以熟悉左外连接就行,具体用法也比较简单,直接将内连接中的inner修改为left outer 即可(一般outer会省略),所以就上面的例子,我们再试一下:
select emp.ename,dept.dname
from emp left join dept
on emp.deptno=dept.did;
再运行之后,黄七这个员工的信息就会显示出来了:
查找所有员工姓名及对应部门信息
这样就能将所有的员工信息导出来了,而右连接就是将这两张表格换一下顺序的,只要掌握左连接的方法即可~ 是不是比较简单呢?今天分享暂时到这,若是有什么问题,欢迎留言或私信我,我们一起学习,一起分享。