mysql外连接与内连接查询的不同之处
程序员文章站
2022-03-11 14:04:42
外连接的语法如下:select 字段名称from 表名1 left|right|full| [outer] join 表名2 on 表名1.字段名1=表面2.字段名2左外连接左外连接的结果集包含左表的...
外连接的语法如下:
select 字段名称
from 表名1 left|right|full| [outer] join 表名2
on 表名1.字段名1=表面2.字段名2
左外连接
左外连接的结果集包含左表的所有记录和右表中满足连接条件的记录,结果集中那些不符合连接条件的来源于右表的列值为null。
left join
右外连接
右外连接是左外连接的反向连接。右外连接的结果集包括右表的所有记录和左表中满足连接条件的记录,结果集中那些不符合连接条件的来源与左表的列值为null。
内连接
内连接查询会将t1表的每一行和t2表的每一行进行比较,并找出满足连接谓词的组合。当连接谓词被满足,a和b中匹配的行会按列组合(并排组合)成结果集中的一行。
下面用几个例子来详细说明:
t1表:
id | name |
1 | 小二 |
2 | 张三 |
3 | 李四 |
t2表:
id | occupation |
1 | 学生 |
2 | 老师 |
4 | 校长 |
内连接结果:
select t1.*,t2.* from ti inner join t2 on a.id=b.id
id | name | id1 | occupation |
1 | 小二 | 1 | 学生 |
2 | 张三 | 2 | 老师 |
左连接结果:
select t1.*,t2.* from ti left join t2 on a.id=b.id
id | name | id1 | occupation |
1 | 小二 | 1 | 学生 |
2 | 张三 | 2 | 老师 |
3 | 李四 | null | null |
右连接结果:
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外连接内连接查询内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
上一篇: 聚划算明牌 价格力的本质是商业力
下一篇: 局域网管理六则经验谈