能解释一下select ename,(select ename from t_emp b where b.empid = a.mgr) as 领导 from t_emp a;的意思吗??
本来是在一张表里查询,但为啥感觉这样写变成了两张表?
是这个意思,出来的结果是对的,只是分成了一个子查询。但是有一个弊端就是这样的级别只能查询得出两级结构。无法型成树型的一个查询。
可百度“mysql 树结构查询”,应该是用了一个递归的函数查询提出的。希望对你有用。
这张表的empid是员工主键,mgr是对应领导的empid,所以要想找到上级领导,需要先找到领导对应的id,即员工的mgr,再根据其查到对应的ename即为领导的姓名