【Mysql数据库面试01】内连接 左连接 右连接 全连接

文章详细介绍了MySQL中的四种主要连接类型:内连接展示了表的交集,左连接显示左表的所有数据及与右表匹配的数据,右连接则显示右表的所有数据及与左表匹配的数据,全连接则是两表数据的并集。每种连接类型都讨论了带和不带WHERE子句的情况,通过示例SQL代码解释了其工作原理和结果。
摘要由CSDN通过智能技术生成

0.准备

在这里插入图片描述

在这里插入图片描述

1.内连接

a和b的交集·

1.1 SQL(不带where)

SQL

---内连接
select  a.id,b.id
from a ,b 
where a.id = b.id
---效果和上面一样
select * 
from a inner join b on a.id = b.id

结果
在这里插入图片描述

1.2 SQL(带where)

SQL

select *
from a ,b 
where a.id = b.id and b.id = 2

结果
在这里插入图片描述
SQL

select * 
from a inner join b on a.id = b.id
where a.id in (1,2)

结果
在这里插入图片描述

1.3总结

内连接有两种形式,就是求交集;若有where条件,则在交集中进行过滤。

2.左连接

2.1SQL(不带where)

SQL

select * 
from a left join b on a.id = b.id

结果
在这里插入图片描述

2.2SQL(带where)

SQL

select * 
from a left join b on a.id = b.id
WHERE b.id <= 2

结果
在这里插入图片描述

2.3总结

左外链接,就是左表(这里是a)显示所有的数据;若是带有where,则在上一步的基础上进行过滤即可。

3.右连接

3.1 SQL(不带where)

SQL

---右连接
select *
from a right join b on a.id = b.id

结果
在这里插入图片描述

3.2 SQL(带where)

SQL

select *
from a right join b on a.id = b.id
where a.id = 1

结果
在这里插入图片描述

3.3 总结

右连接,是以右表为基表(b),右表所有的数据显示;若是带有where,则在上一步的基础上进行过滤即可。

4.全连接

就是求并集

select * 
from a
union
select * 
from b

在这里插入图片描述

实操一遍就明白了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值