当前位置:首页 » 编程语言 » sql查找某个员工的上级
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql查找某个员工的上级

发布时间: 2022-09-23 03:40:02

‘壹’ 求助,sql列出每个员工的领导的名称。manager-id是领导的编号

select emp.first_name + emp.last_name as 员工姓名, manger.first_name + manger.last_name as 主管姓名
from 表名 emp
left outer 表名 manger
on emp.manger_id = manger.id

‘贰’ SQL级联查询,部门表自连接,需要查出某个部门的上级部门及其上上级部门,上级部门无限个,如何查询

用(select…start with…connect by…prior) 具体给你个参考地址:http://www.cnblogs.com/linjiqin/archive/2013/06/24/3152674.html

‘叁’ sql求助如何依据一个人名,查出他的主管,依据他的主管查出他的主管的主管,依次类推,

select a.name as xm,a.leader as zg1,b.leader as zg2,c.leader as zg3
from user a
left join user b on a.leader=b.name
left join user c on b.leader=c.name
where a.name=name1

‘肆’ sql server adventureworks查找员工的上级有多少层的递归是怎样执行的

问题感觉没表达清楚,你是希望让大家帮你翻译下这条sql还是说别的意图?
另外就是 递归调用又是什么意思?从现在的角度看,这里就是一条 内链接的表,
将员工表和 CTE表关联。说明详细点,请追问。

‘伍’ sql语句查询员工的上级,在同一张表中

是查上级和上上级的ID吗,如果是语句
SELECT t1.Eid, t1.ename, t1.epid, t2.epid as sepid FROM employees t1 INNER JOIN employees t2 ON t1.epid = t2.Eid WHERE t1.ename='me'

‘陆’ SQL要怎么写才能把 按员工查出他所在部门所有层级关系 。


WITHB1AS(
SELECT部门名称,部门名称一级部门,''二级部门,''三级部门,''四级部门,''五级部门FROM部门表WHERE层级=0),
B2AS(
SELECTB.部门名称,B1.一级部门,B.部门名称二级部门,''三级部门,''四级部门,''五级部门FROMB1JOIN部门表BONB.上级部门ID=B1.部门名称WHEREB.层级=1),
B3AS(
SELECTB.部门名称,B2.一级部门,B2.二级部门,B.部门名称三级部门,''四级部门,''五级部门FROMB2JOIN部门表BONB.上级部门ID=B2.部门名称WHEREB.层级=2),
B4AS(
SELECTB.部门名称,B3.一级部门,B3.二级部门,B3.三级部门,B.部门名称四级部门,''五级部门FROMB3JOIN部门表BONB.上级部门ID=B3.部门名称WHEREB.层级=3),
B5AS(
SELECTB.部门名称,B4.一级部门,B4.二级部门,B4.三级部门,B4.四级部门,B.部门名称五级部门FROMB4JOIN部门表BONB.上级部门ID=B4.部门名称WHEREB.层级=4),
BAS(
SELECT*FROMB1
UNIONALL
SELECT*FROMB2
UNIONALL
SELECT*FROMB3
UNIONALL
SELECT*FROMB4
UNIONALL
SELECT*FROMB5)
SELECTID,姓名,一级部门,二级部门,三级部门,四级部门,五级部门FROMBJOIN员工表YONY.部门=B.部门名称

‘柒’ 一张表table,树形结构,id唯一标识,name姓名,pid上级id, 求一条sql语句查询出某人所有下属员工

最好增加一个字段Code,然后用所有父类ID和个人ID组成字符串
比如12/234/3456/7890
其中12为第一层,234为第二层,3456为第三层,7890为第四层本身ID
第三层是这个人的父类ID,第二层是第三层的父类。。。

然后查询的时候,先获取该员工的Code,
然后select * from table1 where code like 'Code%';

‘捌’ 用SQL如何列出所有员工的姓名及其直接上级的姓名

select Table1.ename Table2.ename from emp Table1,emp Table2 where Table1.mgr=Table2 .empno 追问: 嗯是的呢 回答: 上面的不能运行吗?我在Sql Server里面测试过了没问题的。 提问者 的感言: 嗯可以了 你这个意思我大概明白了 也算比较好懂 麻烦你了 2009-08-24其他回答(4) 热心问友 2009-08-24差不多 追问: 可是不能出结果啊 高手帮忙看看 回答: 查询上级表中是否存在员工的名称么 补充: 字段没问题么 追问: 当然有的 可是不知道如何查询简单的就是select mgr,ename from emp可是规定要用子查询来写还是不能太熟练的掌握 麻烦指点指点 回答: 我是说你的员工姓名的字段在 上级表中是否存在或是 关联 主外键关系 ? 追问: 不存在的 回答: 什么不存在的啊 ...附耳细说6级2009-08-24不对select ename (select *** from *** where ****** ) mgr from emp derek9级2009-08-24 select emp.ename,emp1.ename as mgrename
from emp left outer join (select empno from mgr) emp1
on emp.mgr=emp1.empno 补充: 忘了取ename,改成
select emp.ename,emp1.ename as mgrename
from emp left outer join (select empno,ename from mgr) emp1
on emp.mgr=emp1.empno
考虑有的emp可能没有上级

‘玖’ sql 一个表中 员工名称、员工号、上级号、 然后要求查询所有员工 和其直接上级,这么干是不是有病

这里假设上级号也就是同一张表里的员工号,而且员工号无重复。

同表连接可用表起别名的办法避免混淆,为了让没有上级的员工也能被查出来,这里使用left join联接。实现SQL语句如下:

select a.员工号,a.员工名称,
b.员工名称 as 上级名称 from
员工表 a left join 员工表 b
on b.员工号=a.上级号;

‘拾’ sql问题,一个员工可能有一个上级部门,可能有多个上级部门,如何查询查询这个员工所在的顶级部门。

没有表结构。不能回答。