oracle中内连接与外连接的区别及详解

本文详细介绍了SQL中的连接类型,包括内连接、左外连接、右外连接及全外连接的概念和用法。通过实例说明了如何正确使用这些连接类型来获取所需数据。

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

内连接

表 1  join   表 2  on   条件


驱动表和匹配表
表 1  join   表 2  on   条件
1)  表 1 叫做驱动表  ,  表 2 叫做匹配表
2)  等值连接方式下  ,  驱动表和匹配表位置可以互换  ,  不影响结果集
执行方式:不论谁做驱动表  ,  都会遍历驱动表  ,  在匹配表中查找匹配数据


 外连接**
1)  左外连接语法结构:  表 1   left outer join     表 2    on   条件
2)  右外连接语法结构:  表 1   right outer join   表 2     on   条件
3)  外连接的特征:
  如果驱动表在匹配表中找不到匹配记录  ,  则匹配一行空行
 外连接的结果集  =  内连接的结果集  +  驱动表在匹配表中匹配不上的记录和空值
 外连接的本质是驱动表中的数据一个都不能少
  left outer join 以左边的表为驱动表
 right outer join 以右边的表为驱动表

   full outer join 全外连接  **
1)  全外连接可以把两个表中的记录全部查出来
2)  全外连接的结果集  =  内连接的结果集  +
驱动表中在匹配表中找不到匹配记录的数据和 null 值  + 
匹配表中在驱动表中找不到匹配记录的数据和 null 值
3)  驱动表和匹配表可以互换


小结外连接
1)  外连接的结果集  =  内连接的结果集  +  驱动表在匹配表中找不到匹配记录的数据和空值
2)  驱动表和匹配表不能互换
3)  写外连接的方式:
a)  先写内连接
b)  使用 left 戒 right 不重要  ,  关键是确定谁做驱动表  ,  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值