MySQL的七种连接模型

1.内连接的等值连接:按公共属性进行等值连接,求集合的交集。

自然连接

select * from A inner join B on A.key=B.key;

2.左外连接:左表全部显示,左表中的元组在右表里找不到满足连接条件的元组时,右边补null。即左表全部显示,右表不匹配则补空。
左外连接

select * from A left join B on A.key=B.key;

3.左连接:只显示左表独有的数据,即集合的差集。
左连接

select * from A left join B on A.key=B.key
where B.key is null;

4.右外连接:右表全部显示,右表中的元组在左表里找不到满足连接条件的元组时,左表补空。即右表全部显示,左表不匹配则补null。
右外连接

select * from A right join B on A.key=B.key;

5.右连接:与左连接同理,只显示右表里独有的数据。
右连接

select * from A right join B on A.key=B.key
where A.key is null;

6.全外连接:左表和右表的数据都显示,找不到匹配的补null。
在这里插入图片描述

select * from A left join B on A.key=B.key
union 
select * from A right join B on A.key=B.key;

注 : mysql不能直接操作全外连接,需要使用左外连接与右外连接的两个结果集进行合并并去除重复。union 去重,union all 不去重。
7.两表独有的数据全部显示。
在这里插入图片描述

select * from A left join B on A.key=B.key 
where B.key is null
union 
select * from A right join B on A.key=B.key
where A.key is null;
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值