当前位置:网站首页>【MySQL】多表查询的分类2:自连接和非自连接
【MySQL】多表查询的分类2:自连接和非自连接
2022-07-21 05:10:00 【自牧君】
多表查询的分类2:自连接VS非自连接
1. 非自连接
非自连指的是在多表查询中,连接的是不同的表。我的这篇博文《多表查询的分类1:等值连接和非等值连接》提到的例子都是非自连接。故此不再赘述。
2. 自连接
自连接,顾名思义,就是自己连接自己,指的是在多表查询中连接的是同一张表。
【例子】根据管理者的员工编号 manager_id
,查询员工表 employees
中每一个员工对应的管理者姓名和ID。员工表 employees
如下图所示:
【分析】管理者的员工编号 manager_id
也必定是公司员工,对应着公司的员工编号 employee_id
。因此,我们可以把员工表复制为两份,一份看作员工表 (起别名为 emp
);另一份看作管理者表 (起别名为 mgr
) ,如下图所示,通过 emp
的管理者编号 manager_id
与 mgr
员工编号 employee_id
连接起来。
如下代码所示:
SELECT emp.`employee_id`, emp.`last_name`, mgr.`manager_id`, mgr.`last_name`
FROM employees emp, employees mgr
WHERE emp.`manager_id` = mgr.`employee_id`;
查询结果:
边栏推荐
- 并发编程(二十一)-ReentrantLock 中断原理
- C language 2022 Shanxi upgraded C language knowledge points
- PeopleSoft概述及开发工具(application desinger)介绍
- peopleCode 理解组件缓存的结构和内容
- Redis(六) - Redis企业实战之商户查询缓存
- Interpretation of deflationary dividend currency safemoon
- Add whitelist function for NFT based on Merkle tree (translation)
- Peoplecode 运算符
- PCL runtime ucrtbased Exception thrown by DLL
- Easy language learning notes (I)
猜你喜欢
并发编程(三十) - ThreadLocal 原理与实践
Redis(一) - Redis 快速入门
并发编程(二十四) - JMM之happens-before原则
上榜 | Navicat 入选信通院发布《全球数据库产业图谱》
Concurrent programming (XX) -reentrantlock locking and unlocking principle
SQL 汇总数据
How to match multiple point clouds step by step
使用 JDBCUtil完成数据库增删改查
盗版引发设备瘫痪 | 官方严正声明:切勿在非官方渠道购买或下载Navicat
2021-10-23
随机推荐
浅析 SQL Server 的 CROSS APPLY 和 OUTER APPLY 查询 - 第二部分
Use Arduino to build an IOT smart home based on Alibaba cloud platform
Navicat 16.1 为OceanBase 社区版提供管理开发工具的新选择
Peoplecode 运算符
PeopleCode 表达式-基本表达式
Interpretation of deflationary dividend currency safemoon
Causes and patches of virtual machine ventilation of Win9x in new processors such as ryzen
Minesweeping (C language)
Concurrent programming (XXVII) - Atomic classes of JUC
Concurrent programming (XXII) -reentrantlock condition variable implementation principle
Detailed description of bag capturing tools
Redis(七) - 封裝Redis工具類
Solana project learning (II): Escrow
【PyTorch教程】03-张量运算详细总结
Centos7上的PostgreSQL开启SSL配置
Simulate the implementation of string functions and memory functions (strlen, strcpy, strstr, memcpy
Centos 安装MySQL 5.7.38
SUSE12安装SAP HANA 2.0内存数据库
Pointnet++ training record partseg
Concurrent programming (19) -aqs of JUC