内连接查询与外连接查询
示例用表

1.内连接:[inner] join
基本语法:左表 [inner] join 右表 on 左表.字段 = 右表.字段;
示例用法
select * from A inner join B on A.type = B.type;
示例结果(黄色部分)

2.外连接:以某张表为主,取出里面的所有记录, 然后每条与另外一张表进行连接: 不管能不能匹配上条件,最终都会保留: 能匹配,正确保留; 不能匹配,其他表的字段都置空NULL。
2.1左(外)连接:left join: 以左表为主表
基本语法: from 左表 left join 右表 on 左表.字段 = 右表.字段;
示例用法
select * from A left join B on A.type = B.type;
示例结果(黄色部分,无数据为null)

2.2右(外)连接:right join: 以右表为主表
基本语法: from 左表 right join 右表 on 左表.字段 = 右表.字段;
示例用法
select * from A right join B on A.type = B.type;
示例结果(黄色部分,无数据为null)

2.3全(外)连接
基本语法: from 左表 full join 右表 on 左表.字段 = 右表.字段;
示例用法
select * from A full join B on A.type = B.type;
示例结果(黄色部分,无数据为null)

本文详细介绍了数据库查询中的内连接、左连接、右连接和全连接。内连接返回满足条件的匹配记录,而外连接保留了所有左表或右表的记录,即使在另一表中没有匹配项,相应字段显示为NULL。全连接则结合了左连接和右连接的结果,展示所有可能的组合。了解这些连接类型对于优化数据库查询至关重要。
674

被折叠的 条评论
为什么被折叠?



