sql中内连接和外连接的区别

article/2025/10/12 16:09:28

对于两张表,外连接和内连接的区别在于:

内连接:只显示两表id匹配的
左外连接:显示join左边的表的所有数据(不管两表是否匹配),对于不匹配的部分都用NULL显示
右外连接:与左外连接相反,显示join右边的表的所有数据

我们直接用题来解释。 

 假设有两个表stu和exam,该表结构如上,我们要显示所有学生的成绩,那么内连接和外连接的方式分别为(插入数据请自己补全):

create table stu(
Id int,
Name varchar(40))
create table exam(
Id int,
Grade int)insert into exam values(11,89)select * from stu
select * from exam--【显示所有学生的成绩】
--内连接(只显示两表id匹配的)
select stu.id,exam.id,stu.name,exam.grade from stu inner join exam on stu.id=exam.id
--左外连接(显示join左边的表的所有数据,exam只有两条记录,所以stu.id,grade都用NULL显示)
select stu.id,exam.id,stu.name,exam.grade from stu left join exam on stu.id=exam.id
--右外连接(与左外连接相反,显示join右边的表的所有数据)
select stu.id,exam.id,stu.name,exam.grade from stu right join exam on stu.id=exam.id

 对于插入完的数据查询结果应该是这样的:

1.如果用内连接显示所有学生的成绩, 那么他会只显示两表id匹配的

2.对于左外查询,他会显示join左边的表的所有数据,exam只有两条记录,所以stu.id,grade都用NULL显示 

3.右连接与左连接相反,显示join右边的表的所有数据 


http://chatgpt.dhexx.cn/article/hPpK6SLv.shtml

相关文章

左连接 ,右连接,内连接和全外连接的4者区别

基本定义: left join (左连接):返回包括左表中的所有记录和右表中连接字段相等的记录。 right join (右连接):返回包括右表中的所有记录和左表中连接字段相等的记录。 inner join (等…

数据库中的内连接、自然连接和外连接的区别

数据中的连接join分为内连接、自然连接、外连接,外连接又分为左外连接、右外连接、全外连接 当然,这些分类都是在连接的基础上,是从两个表中记录的笛卡尔积中选取满足连接的记录。笛卡尔积简单的说就是一个表里的记录要分别和另外一个表的记…

交叉连接、内连接和外连接的区别及使用方式

一、交叉连接、内连接、外连接的区别 交叉连接又叫’笛卡尔积’,它是指不使用任何条件,直接将一个表的所有记录和另一个表中的所有记录一一匹配。内连接 则是只有条件的交叉连接,根据某个条件筛选出符合条件的记录,不符合条件的记…

内连接与外连接区别

内连接:指连接结果仅包含符合连接条件的行,参与连接的两个表都应该符合连接条件。 外连接:连接结果不仅包含符合连接条件的行同时也包含自身不符合条件的行。包括左外连接、右外连接和全外连接。 左外连接:左边表数据行全部保留…

mysql 内连接、自然连接、外连接的区别

数据库中的内连接、自然连接、外连接 注意:mysql不支持全外连接,using和on的区别在于需要连接的两个表的属性名相同的时候使用using和on效果一样,而属性名不同的时候必须使用on 数据库中的连接join分为内连接、自然连接、外连接&#xff0c…

mysql 自然连接、内连接、外连接的区别

数据库中的连接join分为内连接、自然连接、外连接,外连接又分为左外连接、右外连接、全外连接(注意:mysql不支持全外连接) 首先,我们先来建两张表,第一张表命名为kemu,第二张表命名为score: 一、left join…

内连接与外连接的区别

有两个表A和表B。表A结构如下:Aid:int;标识种子,主键,自增IDAname:varchar数据情况,即用select * from A出来的记录情况如下图1所示:图1:A表数据表B结构如下:Bid&#xf…

内连接、左外连接与右外连接的区别及作用介绍

SQL语句当中比较难的部分就有今天要给朋友们分享的这个,inner join, left join 和 right join他们三个的作用以及区别是什么。 顺便也会把交叉连接一起分享了。 上面会分享一些基本的语法与使用,下方会详细介绍 1)交叉连接,又称笛…

图解数据库左连接、右连接、内连接、外连接、全连接的区别

数据库连表方式 内连接 :inner 、inner join外连接 :outer join 左外连接 :left outer join左连接 :left join右外连接 right outer join右连接: right join 全连接 full join 、union 准备 现在有2张表&#xff0c…

内链接和外连接的区别

内连接,也被称为自然连接,只有两个表相匹配的行才能在结果集中出现。返回的结果集选取了两个表中所有相匹配的数据,舍弃了不匹配的数据。由于内连接是从结果表中删除与其他连接表中没有匹配的所有行,所以内连接可能会造成信息的丢…

数据库的内连接和外连接的区别

内连接:指连接结果仅包含符合连接条件的行,参与连接的两个表都应该符合连接条件。 外连接:连接结果不仅包含符合连接条件的行同时也包含自身不符合条件的行。包括左外连接、右外连接和全外连接。 左外连接:左边表数据行全部保留…

内连接和外连接区别

在之前,我对MSSQL中的内连接和外连接所得出的数据集不是很清楚。这几天重新温习了一下SQL的书本,现在的思路应该是很清楚了,现在把自己的理解发出来给大家温习下。希望和我一样对SQL的连接语句不太理解的朋友能够有所帮助。(发这么…

数据库中的内连接、自然连接、和外连接的区别

数据中的连接join分为内连接、自然连接、外连接,外连接又分为左外连接、右外连接、全外连接 当然,这些分类都是在连接的基础上,是从两个表中记录的笛卡尔积中选取满足连接的记录。笛卡尔积简单的说就是一个表里的记录要分别和另外一个表的记…

左右连接和内连接的区别

首先,我这有两个表,里面的数据去这样的: 表和数据准备好了,接下来进行操作: (1)先说左连接查询: 左连接:在 LEFT JOIN 左边的表里面数据全被全部查出来,右边的…

内连接和外连接

内连接和外连接都是表的连接方式(将两张表连接起来) 内连接inner join 外连接:左连接 left join,右连接 right join 1.笛卡尔积 表一和表二做笛卡尔积,就是将表一的每一行和表二的每一行进行拼接 所有的这些连接…

数据库-内连接与外连接的区别(举例说明)

内连接,也被称为自然连接,只有两个表相匹配的行才能在结果集中出现。返回的结果集选取了两个表中所有相匹配的数据,舍弃了不匹配的数据。由于内连接是从结果表中删除与其他连接表中没有匹配的所有行,所以内连接可能会造成信息的丢…

内连接与外链接的区别

我们要实习了,实习面试过了,但是由于考试原因经理让我在学校巩固一些SQL知识。于是我就开始了,做题之旅,一天做几个巩固一下,好久没做了,刚做就来问题了。外链接与内连接我居然不知道他们之间的原理&#x…

内连接和外连接的区别--举例

内连接是保证两个表中所有行都满足连接条件,而外连接不仅包含符合连接条件的行,还包含左表、右表或两个边接表中的所有数据行。 内连接:指连接结果仅包含符合连接条件的行,参与连接的两个表都应该符合连接条件。 外连接&#xf…

内连接、外连接的区别及作用

1.基本介绍 不管是内连接、外连接还是带where子句的多表查询,都组合自多个表,并生成结果表。 1.内连接:只返回两个表中连接字段相等的行。inner join(等值连接) 只返回两个表中联结字段相等的数据 2.左外连接(也称左连接&#x…

GitHub下载指定文件夹的方法(简单快捷)

GitHub下载指定文件夹的快捷方法 GitHub上默认是无法下载指定的文件夹,然而有时候我们只需要下载其中一个文件夹的内容,比如下图中的GAN: 可以复制该文件夹的链接: 然后在该网站上即可下载到所需的文件: