自连接
自连接顾名思义 就是自己连接自己,也就是把一张表连接查询多次,我们先来学习下自连接的语法
sql
SELECT 字段列表 from 表A 别名A JOIN 表A 别名B ON 条件;
而对自连接的查询可以是内连接也可以是外连接
案例
查询员工及其所属领导的名字
sql
SELECT a.name,b.name from emp a ,emp b where a.managerId = b.id;
查询所有员工 emp 及其领导的名字 emp 如果员工没有领导,也要查询出来
表结构 emp a. emp b
sql
SELECT a.name '员工',b.name '领导' from emp a LEFT JOIN emp b ON a.managerId = b.id
注意
在自连接查询中,必须要为表起别名,要不然我们不清楚所指定的条件,返回的字段,到底是哪一张表的字段