加入收藏 | 设为首页 | 会员中心 | 我要投稿 晋中站长网 (https://www.0354zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql如何给连接的表命名

发布时间:2022-10-15 09:01:11 所属栏目:MsSql教程 来源:互联网
导读: SQL内连接、左连接、右连接的区别
前言:目前研究生已经毕业,刚刚找到了一份BA数据分析师的工作。目前的工作内容主要是指标的理解和使用SQL将代码写出来。在这里经常用到内连接(inner)

SQL内连接、左连接、右连接的区别

前言:目前研究生已经毕业,刚刚找到了一份BA数据分析师的工作。目前的工作内容主要是指标的理解和使用SQL将代码写出来。在这里经常用到内连接(inner) join和左连接 left(outer)join等的连接方式。下面直接通过实例进行解释,防止大家进入误区。

1、INNER JOIN (内连接)

下图为表一,表命名为e

在这里插入图片描述

下图为表二,表命名为f

在这里插入图片描述

将表e,f导入到Navicat(Mysql的一个编辑器)中,进行SQL查询

在这里插入图片描述

在这里插入图片描述

查看两个表INNER JOIN(内连接)的结果

在这里插入图片描述

如上图:

1、e,f表通过id进行INNER JOIN(内连接)后,只剩下共有的部分。

e表中id 7-17的部分被去除,f表中18-19部分被去除。只剩下1-6的部分。

2、e表的数据和f表字段虽然重名,但查询后会系统会进行区分。那么我们可以通过 表名.数据 查询两张表连接后指定相应的数据。

2、LEFT OUTER JOIN (左连接)

查看两个表LEFT OUTER JOIN(左连接)的结果

在这里插入图片描述

如上图:

1、e,f表通过id进行LEFT JOIN(内连接)后,剩下量e表id1-17的部分和两表id共有的部分。即左连接,LEFT JOIN前面的表作为主表,保留全部数据。同时保留LEFT JOIN右边表f与左表e的公共部分。

2、左表中存在的部分,而右边表不存在,则全部使用NULL代替。

3、e表的数据和f表字段虽然重名,但查询后会系统会进行区分。我们可以通过 表名.数据 查询两张表连接后指定相应的数据。

3、RIGHT OUTER JOIN (右连接)

查看两个表RIGHT OUTER JOIN (右连接)的结果

在这里插入图片描述

1、emssql 右连接,f表通过id进行RIGHT OUTER JOIN(右连接)后,e表保留两表id共有的部分,f表保留全部数据,而左表e中不存在的数据将设置为NULL。即在右连接中,RIGHT OUTER JOIN右边的表f作为主表,保留全部数据。

RIGHT OUTER JOIN右边表f则保留与左表e的公共部分。

2、左表中存在的部分,而右边表不存在,则全部使用NULL代替。

3、e表的数据和f表字段虽然重名,但查询后会系统会进行区分。我们可以通过 表名.数据 查询两张表连接后指定相应的数据。

注:连接后的表格与原表格是有差异的,因为不管是内连接,左连接、有链接,在连接后都会剔除一部分数据。

左右连接方式一致,只是表放的位置,决定是否为主表。左连接:左边表为主表;右连接右边为主表。(常用左连接)。

(编辑:晋中站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!