mysql中查询出所有雇员的姓名及其所属上级的姓名

图片说明

能解释一下select ename,(select ename from t_emp b where b.empid = a.mgr) as 领导 from t_emp a;的意思吗??

本来是在一张表里查询,但为啥感觉这样写变成了两张表?

查询结果(没列完):
图片说明

qq_42432673
张依冉上课吃猪蹄 答案:select ename,(select ename from t_emp b where b.empid = a.mgr) as 领导 from t_emp a;
2 个月之前 回复

2个回答

是这个意思,出来的结果是对的,只是分成了一个子查询。但是有一个弊端就是这样的级别只能查询得出两级结构。无法型成树型的一个查询。
可百度“mysql 树结构查询”,应该是用了一个递归的函数查询提出的。希望对你有用。

yxf771hotmail
风子杨yxf771 回复张依冉上课吃猪蹄: 不好意思,回复晚了,楼下解释的就比较详细了。
2 个月之前 回复
qq_42432673
张依冉上课吃猪蹄 能解释一下这个查询语句吗??谢谢啦
2 个月之前 回复

这张表的empid是员工主键,mgr是对应领导的empid,所以要想找到上级领导,需要先找到领导对应的id,即员工的mgr,再根据其查到对应的ename即为领导的姓名

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问