企业组织结构表(ogt)
个人id | 领导id | 职务名称 |
id | pid | cname |
1 | 0 | 信息部总监 |
2 | 0 | 财务部总监 |
3 | 1 | 信息部经理 |
4 | 2 | 财务部经理 |
5 | 2 | 财务部总监文秘 |
6 | 3 | 信息部小弟1 |
7 | 3 | 信息部小弟2 |
8 | 4 | 财务部小弟1 |
1.查询信息部总监所有下属
with my1 as(select * from ogt where cname = '信息部总监'
union all
select ogt.* from ogt,my1 where ogt.pid = my1.id)
select * from my1
个人id | 领导id | 职务名称 |
id | pid | cname |
1 | 0 | 信息部总监 |
3 | 1 | 信息部经理 |
6 | 3 | 信息部小弟1 |
7 | 3 | 信息部小弟2 |
2.查询财务部总监下面的基层员工
with my1 as(select * from ogt where cname = '财务部总监'
union all
select ogt.* from ogt,my1 where ogt.pid = my1.id)
select * from my1 where id not in (select pid from my1)
个人id | 领导id | 职务名称 |
id | pid | cname |
5 | 2 | 财务部总监文秘 |
8 | 4 | 财务部小弟1 |