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

本文通过实战练习介绍了SQL中外连接的概念及应用,包括左外连接、右外连接和全外连接等,并展示了如何实现自连接来解决员工与上级领导间的关系查询。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

昨天傅老师和大家聊了外连接的概念和语法,今天我们一起就外连接做点练习。

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


连接

 

们看到以上的语句把empdept内的记录交叉组,产生了迪卡尔积效应。

 

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:把一张表取两个别名,当做两张表来使用,自己和自己关联。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值