mysql外连接与内连接查询的不同之处

时间:2021-11-21 21:17:33

外连接的语法如下:

select 字段名称
from 表名1 left|right|full| [outer] join 表名2
  on 表名1.字段名1=表面2.字段名2

左外连接

左外连接的结果集包含左表的所有记录和右表中满足连接条件的记录,结果集中那些不符合连接条件的来源于右表的列值为null。

left join

mysql外连接与内连接查询的不同之处

右外连接

右外连接是左外连接的反向连接。右外连接的结果集包括右表的所有记录和左表中满足连接条件的记录,结果集中那些不符合连接条件的来源与左表的列值为null。

mysql外连接与内连接查询的不同之处

内连接

内连接查询会将t1表的每一行和t2表的每一行进行比较,并找出满足连接谓词的组合。当连接谓词被满足,a和b中匹配的行会按列组合(并排组合)成结果集中的一行。

mysql外连接与内连接查询的不同之处

下面用几个例子来详细说明:

t1表:

id name
1 小二
2 张三
3 李四

t2表:

id occupation
学生
2 老师
4 校长

内连接结果:

?
1
2
3
select t1.*,t2.*
from ti inner join t2
  on a.id=b.id
id name id1 occupation
1 小二 1 学生
2 张三 2 老师

左连接结果:

?
1
2
3
select t1.*,t2.*
from ti left join t2
  on a.id=b.id
id name id1 occupation
1 小二 1 学生
2 张三 2 老师
3 李四 null null

右连接结果:

?
1
2
3
select t1.*,t2.*
from ti right join t2
  on a.id=b.id
id name id1 occupation
1 小二 1 学生
2 张三 2 老师
null null 4 校长

总结

到此这篇关于mysql外连接与内连接查询的文章就介绍到这了,更多相关mysql外连接内连接查询内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/m0_57779406/article/details/117441418