多表查询的内连接与外连接

目录

1. 内连接

1.1 概述

1.2 等值连接

1.3 非等值连接

1.4 自连接

2. 外连接

2.1 概述

2.2 左/右连接

2.3 全连接

3. 多张表连接


1. 内连接
1.1 概述

查询满足条件的两张表数据,也就是两张表的交集;

 

内连接使用过程中,尽量对表重命名,以此提高查询效率

1.2 等值连接

 on 后面的条件是与等号相关的;

如下,查询每个员工所在的部门:

可以看出,查询的结果是满足条件的。没有满足条件的没有查出,这很好地体现了内连接。

内连接的条件中,与 “ = ” 相关,很好体现了内连接的等值连接;

当然,也可以对查询出的结果进行过滤: 

1.3 非等值连接

查询员工姓名,工资以及工资等级:

1.4 自连接

把一张表当作两张表,自己连接自己; 

如下,查询员工姓名,以及领导姓名;

2. 外连接
2.1 概述

查询满足条件的两张表的数据之后,再将其中一张表的全部数据查询出来;

左(外)连接:

右(外)连接:

2.2 左/右连接

 如下,查询所有部门信息,并且找出每个部门下的员工;

先使用内连接查找出员工姓名,部门姓名;

根据输入的命令与部门的位置,判断使用左连接还是右连接;

左/右连接是在内连接的的基础上执行的;

2.3 全连接

MySQL不支持全连接,SQLserver与Oracle支持全连接; 

 

3. 多张表连接

如下,找出每个员工的部门,以及每个员工的薪资等级;

  • 21
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值