自连接就是说,在同一个表中,看做是两个表,下表表示 找每个人的领导,如果没有领导,显示无领导,eid 对应 leaderid,请看员工表

mysql> select * from emp;
+-----+--------+-----+--------+--------+----------+---------------------+---------------------+
| eid | ename | sex | salary | deptid | leaderid | birdate | income |
+-----+--------+-----+--------+--------+----------+---------------------+---------------------+
| 1 | 马云 | 男 | 1 | 1000 | 0 | 1985-03-05 00:00:00 | 2008-05-06 00:00:00 |
| 2 | 李小龙 | 男 | 20000 | 1001 | 1 | 1983-06-07 00:00:00 | 2012-05-05 00:00:00 |
| 3 | 成龙 | 男 | 23000 | 1002 | 2 | 1973-06-07 00:00:00 | 2013-05-05 00:00:00 |
| 4 | 杨明 | 男 | 22000 | 1003 | 2 | 1993-06-09 00:00:00 | 2013-05-06 00:00:00 |
| 5 | 黎明 | 男 | 28000 | 1004 | 3 | 1992-08-09 00:00:00 | 2013-07-06 00:00:00 |
| 6 | 范冰冰 | 女 | 12000 | 1005 | 4 | 1994-08-09 00:00:00 | 2014-07-06 00:00:00 |
| 7 | 刘亦菲 | 女 | 19000 | 1006 | 5 | 1997-08-09 00:00:00 | 2011-07-03 00:00:00 |
| 8 | 唐嫣 | 女 | 39000 | 1007 | 6 | 1991-08-09 00:00:00 | 2015-07-03 00:00:00 |
+-----+--------+-----+--------+--------+----------+---------------------+---------------------+

把一张表看成两张表,一张员工表,一张领导表,都是emp表

mysql> select e.ename '无领导ename',le.ename '领导ename'
-> from emp e left join emp le
-> on e.leaderid = le.eid;
+-------------+-----------+
| 无领导ename | 领导ename |
+-------------+-----------+
| 李小龙 | 马云 |
| 成龙 | 李小龙 |
| 杨明 | 李小龙 |
| 黎明 | 成龙 |
| 范冰冰 | 杨明 |
| 刘亦菲 | 黎明 |
| 唐嫣 | 范冰冰 |
| 马云 | NULL |
+-------------+-----------+

以上为自连接。

MySQL之自连接的更多相关文章

  1. 深入理解mysql的自连接和join关联

    一.mysql自连接 mysql有时在信息查询时需要进行对自身连接(自连接),所以我们需要为表定义别名.我们举例说明,下面是商品采购表,我们需要找到采购价格比惠惠高的所有信息. 一般情况我们看到这张表 ...

  2. [LeetCode]603. 连续空余座位(Mysql、自连接)

    题目 几个朋友来到电影院的售票处,准备预约连续空余座位. 你能利用表 cinema ,帮他们写一个查询语句,获取所有空余座位,并将它们按照 seat_id 排序后返回吗? | seat_id | fr ...

  3. Linux TCP自连接问题

    [参考文章]:net.ipv4.ip_local_port_range 的值究竟影响了啥 [参考文章]:Linux内核参数优化 最近卸载MySQL服务偶尔会遇到MySQL端口自连接问题.导致MySQL ...

  4. 【Mysql进阶技巧(1)】 MySQL的多表关联与自连接

    自连接 测试数据准备 CREATE TABLE `t2` ( `id` int(11) NOT NULL, `gid` char(1) DEFAULT NULL, `col1` int(11) DEF ...

  5. Mysql自连接的一些用法

    自连接是连接的一种用法,但并不是连接的一种类型,因为他的本质是把一张表当成两张表来使用. mysql有时在信息查询时需要进行对自身连接(自连接),所以我们需要为表定义别名. 我们举例说明,下面是商品采 ...

  6. MySQL基础之自连接用法简介

    MySQL系列之自连接简介,MySQL自连接操作,没有特定的关键字,所谓自连接指的是同一个表不同实例之间的join操作 引用https://www.w3resource.com的图示: 特征: 自连接 ...

  7. 关于mySQL自连接的一些用法

    自连接是连接的一种用法,但并不是连接的一种类型,因为他的本质是把一张表当成两张表来使用. 举例说明: 这是一张职员信息表,如果我要查询这张表中的每个职员的上司,那么必须使用自连接来查询.所以为了能实现 ...

  8. mysql 自连接

    SELECT语句中的自连接. 到目前为止,我们连接的都是两张不同的表,那么能不能对一张表进行自我连接呢?答案是肯定的. 有没有必要对一张表进行自我连接呢?答案也是肯定的. 表的别名: 一张表可以自我连 ...

  9. MySQL☞自连接

    自连接:一张表中根据自身列之间的关联关系,自己跟自己链接. A.创建一个user表,且插入数据,数据如下: B.分析: 把user表看成两张表,一张员工表,一张领导表,发现员工表中lead(领导编号) ...

随机推荐

  1. ThinkPHP3(添加,修改,删除)

    实现商品的添加 1.在add.html页面中更改表单元素的名称 Goods控制器的add()方法中获取商品分类 在add.html中循环获取 2.设置提交的位置 3.添加商品代码参见GoodsCont ...

  2. 前端与编译原理 用js去运行js代码 js2run

    # 前端与编译原理 用js去运行js代码 js2run 前端与编译原理似乎相隔甚远,各种热门的框架都学不过来,那能顾及到这么多底层呢,前端开发者们似乎对编译原理的影响仅仅是"抽象语法树&qu ...

  3. SACD-ISO音频镜像播放方式

    SACD-ISO 音频文件不需要解压也不需要挂载光盘,可以直拖入播放器播放. 播放器下载 foobar2000https://www.foobar2000.org/download 解码插件下载 Su ...

  4. Drools入门

    文章转载自:http://cwqcwq.iteye.com/blog/397869 一.背景知识:  1.什么是规则引擎  Java规则引擎起源于基于规则的专家系统,而基于规则的专家系统又是专家系统的 ...

  5. Python进阶----数据库引擎(InnoDB),表的创建,mysql的数据类型,mysql表的约束

    Python进阶----数据库引擎(InnoDB),表的创建,mysql的数据类型,mysql表的约束 一丶MySQL的存储引擎 什么是存储引擎:    MySQL中的数据用各种不同的技术存储在文件( ...

  6. 【开发工具】- Atom下载及安装

    原文地址:https://www.jianshu.com/p/c112f024e0ab

  7. JavaScript 的内置对象和浏览器对象

    JavaScript 中对象通常包括两种类型:内置对象和浏览器对象,此外用户还可以自定义对象. 在 ECMAScript 中,更精确的定义应该分为:本地对象.内置对象和宿主对象. 对象包含两个要素: ...

  8. INTERVAL 用法 mysql

    原文:https://blog.csdn.net/sqlquan/article/details/82699237 做个例子描述吧,也许更易于理解. 准备: 1.建表 create table INT ...

  9. Sublime Text3的安装(package control error 或者 there are no package available for installation等问题)

    Sublime是一款非常好用的代码编辑器.Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,多种语言的插件,代码段等.还可自定义键绑定,菜单和工具栏.Sublime Text 的 ...

  10. 使用PATH变量进行Linux权限升级技巧

    0x00 前言 在解决了几个OSCP挑战之后,我们决定写一篇关于用于Linux权限升级的各种方法的文章,这对我们的读者在其渗透测试项目中有所帮助.在本文中,我们将学习“使用$path变量的各种方法”以 ...