内连接、外连接、全连接,哪种数据库连接方式最适合我的需求?
- 内容介绍
- 文章标签
- 相关推荐
本文共计290个文字,预计阅读时间需要2分钟。
通过内连接获取集合,全链路连接取并集,左外连接的右侧负责用null补全,右外连接反向+a表id+name,b表id+job+parent_id。数据如下:a表id name,b表id job parent_id,3 1,23 1,2 李四,34 2,3 王武,34 4。查询a.id与b.parent_id相同的关系。
a表 id name b表 id job parent_id 1 张3 1 23 1 2 李四 2 34 2 3 王武 3 34 4 a.id同parent_id 存在 关系 ??内连接 select a.*,b.* from a inner join b on a.id=b.parent_id 结果是 1 张3 1 23 1 2 李四 2 34 2 ? 左连接 select a.*,b.* from a left join b on a.id=b.parent_id 结果是 1 张3 1 23 1 2 李四 2 34 2 3 王武 null ? 右连接? select a.*,b.* from a right join b on a.id=b.parent_id 结果是 1 张3 1 23 1 2 李四 2 34 2 null 3 34 4 ? 完全连接 ? select a.*,b.* from a full join b on a.id=b.parent_id 结果是 1 张3 1 23 1 2 李四 2 34 2 null 3 34 4 3 王武 null
本文共计290个文字,预计阅读时间需要2分钟。
通过内连接获取集合,全链路连接取并集,左外连接的右侧负责用null补全,右外连接反向+a表id+name,b表id+job+parent_id。数据如下:a表id name,b表id job parent_id,3 1,23 1,2 李四,34 2,3 王武,34 4。查询a.id与b.parent_id相同的关系。
a表 id name b表 id job parent_id 1 张3 1 23 1 2 李四 2 34 2 3 王武 3 34 4 a.id同parent_id 存在 关系 ??内连接 select a.*,b.* from a inner join b on a.id=b.parent_id 结果是 1 张3 1 23 1 2 李四 2 34 2 ? 左连接 select a.*,b.* from a left join b on a.id=b.parent_id 结果是 1 张3 1 23 1 2 李四 2 34 2 3 王武 null ? 右连接? select a.*,b.* from a right join b on a.id=b.parent_id 结果是 1 张3 1 23 1 2 李四 2 34 2 null 3 34 4 ? 完全连接 ? select a.*,b.* from a full join b on a.id=b.parent_id 结果是 1 张3 1 23 1 2 李四 2 34 2 null 3 34 4 3 王武 null

