sqlserver,sql根据部门id逐级获取上级部门信息,并存放到list中

with cte as
(
select dept_id,parent_dept,dept_name,dept_man, 0 as lvl from w_h_dept
where dept_id = 'T090102'
union all
select d.dept_id,d.parent_dept,d.dept_name,d.dept_man,lvl + 1 from cte c inner join w_h_dept d
on c.parent_dept= d.dept_id
)

select e.*,u.user_name from cte e LEFT JOIN x_userinfo u on e.dept_man=u.user_id

其中,部门表的dept_id可以对应其他数据的parent_dept,部门表中的dept_man关联用户表的user_id;

posted @ 2021-06-04 15:29  丙炎  阅读(540)  评论(0)    收藏  举报