mysql 自然连接、内连接、外连接的区别08
发布网友
发布时间:2024-10-20 01:23
我来回答
共1个回答
热心网友
时间:2024-11-11 02:03
数据库中的连接join分为内连接、自然连接、外连接,外连接又分为左外连接、右外连接。首先,我们先来建两张表,第一张表命名为kemu,第二张表命名为score:
一、左连接(左外连接):表示以左表为主,关联上右表的数据,查出来的结果显示左边的所有数据,然后右边显示的是和左边有交集部分的数据。
结果集:
二、右连接:表示以右表为主,关联查询左表的数据,查出右表所有数据以及左表和右表有交集的数据。
结果集:
三、内连接:表示以两个表的交集为主,查出来是两个表有交集的部分,其余没有关联的部分不会额外显示出来。
结果集:
以上就是三种连接的区别!
自然连接是一种特殊的等值连接,它要求两个关系表中进行连接的必须是相同的属性列,无须添加连接条件,并且在结果中消除重复的属性列。
结果:
内连接基本与自然连接相同,不同之处在于自然连接的是同名属性列的连接,而内连接则不要求两属性列同名,可以用using或on来指定某两列字段相同的连接条件。
内连接时某些属性值不同则会导致这些数据会被舍弃,为保存这些信息,外连接就解决了相应的问题。外连接分为左外连接、右外连接。
左外连接是在两表进行自然连接,只把左表保留在结果集中,右表对应的列上填null。
结果:
右外连接是在两表进行自然连接,只把右表要舍弃的保留在结果集中,左表对应的列上填null。
结果:
MySQL不支持全外连接,但可以通过union关键字将左连接和右链接的结果合并,实现全外连接的效果。
构建数据挖掘能力,涉及热门行业真实项目实操,包括Tableau、PowerBI、Python、SQL、Hive、Hadoop、SPSS等技术的实战案例,内容涵盖数据可视化、数据挖掘、面试题讲解等。