1、表结构
create table hr_role
(
hr_role_id VARCHAR(50),--岗位id
hr_role_name VARCHAR(50),--岗位名称
role_parent_id VARCHAR(30)--上级岗位id
)
insert into hr_role (hr_role_id ,hr_role_name ,role_parent_id ) VALUES('HrRole0000694L74','总经理','NULL')
insert into hr_role (hr_role_id ,hr_role_name ,role_parent_id ) VALUES('HrRole0000694L74001','技术部经理','HrRole0000694L74')
insert into hr_role (hr_role_id ,hr_role_name ,role_parent_id ) VALUES('HrRole0000694L74002','财务部经理','HrRole0000694L74')
insert into hr_role (hr_role_id ,hr_role_name ,role_parent_id ) VALUES('HrRole0000694L74003','市场部经理','HrRole0000694L74')
2、得到总经理及总经理一下的所有岗位
with #temp as
(select hr_role_id,hr_role_name,role_parent_id from hr_role where hr_role_id='HrRole0000694L74'
union all
select A.hr_role_id,A.hr_role_name,A.role_parent_id from hr_role A,#temp B where A.role_parent_id=B.hr_role_id
)
select * from #temp