数据库的左外连接、右外连接_oracle左连接和右连接的区别

数据库的左外连接、右外连接_oracle左连接和右连接的区别数据库内、外、左、右连接详解_左外连接

写在前面:

数据库连接操作非常重要,明确连接操作有助于更好地掌握SQL语句查询。

数据库连表方式:
内连接 :inner join
外连接 :outer join
左外连接 :left outer join
左连接 :left join
右外连接 right outer join
右连接: right join
全连接 full join 、union

前提准备

现在有2张表,A表和B表,数据和表结构如下:
在这里插入图片描述

一、内连接

内连接查询的是两张表的交集,也就是A表和B表都必须有数据才能查询出来;
在这里插入图片描述

以下三个查询的结果是一样的,针对上面的表数据,能查询出id为1、2、3数据的SQL语句为:

-- join
select * from A  join B on A.id = B.id 

-- inner join
select * from A inner join B on A.id = B.id 

-- 逗号的连表方式就是内连接
select * from A , B where A.id = B.id 

二、左外连接和左连接

左外连接和左连接是以左表为基础,根据ON后给出的两表的条件将两表连接起来。结果会将左表所有的查询信息列出,而右表只列出ON后条件与左表满足的部分。左连接全称为左外连接,是外连接的一种。
在这里插入图片描述

下面2个查询的结果是一样的,针对上面的表数据,能查询出id为1、2、3、4数据的SQL语句为:

-- left join
select * from A left join B on  A.id = B.id 

-- left outer join
select * from A left outer join B on  A.id = B.id 

三、右外连接和右连接

右外连接和右连接是以右表为基础,根据ON后给出的两表的条件将两表连接起来。结果会将右表所有的查询信息列出,而左表只列出ON后条件与右表满足的部分。右连接全称为右外连接,是外连接的一种。

在这里插入图片描述
下面2个查询的结果是一样的,针对上面的表数据,能查询出id为1、2、3数据的SQL语句为:

-- right join
select * from A right join B on  A.id = B.id 

-- right outer join
select * from A right outer join B on  A.id = B.id 

四、全连接

全连接显示两侧表中所有满足检索条件的行。
在这里插入图片描述
SQL语句为:

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

五、总结

1.内连接与外连接的区别是什么?

内连接和外连接的区别:
内连接:inner join(等值连接) 只返回两个表中联结字段相等的数据。
外连接:返回包括左/右表中的所有记录和右/左表中联结字段相等的记录。

2.左外连接和右外连接的区别是什么?

左外连接和右外连接的区别:
左外连接也称左连接。以左表为基表,在FROM子句中使用关键字“LEFT OUTER JOIN”或关键字“LEFT JOIN”来连接两张表。
右外连接也称右连接。以右表为基表,在FROM子句中使用关键字“RIGHT OUTER JOIN”或关键字“RIGHT JOIN”来连接两张表。

3.概括
1.内连接就是取交集的部分。
2.左连接就是左表全部的数据加上交集的数据。
3.右连接就是右表全部的数据加上交集的数据。
4.交叉连接就是数据全都要。

引用

[1]数据库内、外、左、右连接详解
[2]数据库内、外、左、右连接详解
[3]https://zhuanlan.zhihu.com/p/258482556

今天的文章数据库的左外连接、右外连接_oracle左连接和右连接的区别分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/71268.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注