SQL的四种连接 ——内连接、左连接(左外连接)、右连接(右外连接)、全连接(全外连接)

本文深入解析了MySQL中四种主要的表连接方式:内连接、左连接、右连接及全连接的实现方法与应用场景,通过具体SQL语句示例,帮助读者理解不同连接方式下数据的匹配逻辑。

在数据库中建立两张表,分别是 user 和 u

user表:
在这里插入图片描述
u表
在这里插入图片描述
关联字段user.u_idu.parent_id来演示一下MySQL的 内连接、左连接(左外连接)、右连接(右外连接)、全连接(全外连接)

内连接

  • 关键字:inner join on
  • sql语句: select user.*,u.* from user inner join u on user.u_id=u.parent_id
  • 运行结果:
    在这里插入图片描述
    • 分析:
      内连接就是找两个表的交集

左连接(左外连接)

  • 关键字:left join on
  • sql语句: select user.*,u.* from user left join u on user.u_id=u.parent_id
  • 运行结果:

在这里插入图片描述

  • 分析
    左连接是以左边的表的数据为主,匹配右边表的数据。

右连接(右外连接)

  • 关键字:right join on

  • sql语句: select user.*,u.* from user right join u on user.u_id=u.parent_id

  • 运行结果:
    在这里插入图片描述

  • 分析
    左连接是以右边的表的数据为主,匹配左边表的数据。

全连接(全外连接)

  • 关键字:full join on
  • sql语句: select user.*,u.* from user full join u on user.u_id=u.parent_id

mysql不支持全连接!!!
但是!!!可以用别的方法实现全连接
使用左连接 结合 右连接 实现 全连接!!!

在这里插入图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值