【发布时间】:2016-04-07 14:26:57
【问题描述】:
我尝试获取用户的所有高层管理人员。
例如。 Dan king(专家)--> Adam Lion(产品经理)--> Reina Ken(IT 主管)--> Michael Lorren(总监)--> Pat Deep(CEO)
我想在下面的一栏中展示 Dan King 的高层管理人员:
Adam
Reina
Michael
Pat
注意: Get all employees under manager with CTE 我使用了这个链接,我决定带经理的用户。
我尝试根据示例代码转换我的代码,但没有成功:
;WITH OS_MANAGERS AS
(
SELECT USERID, MANAGERUSERID
from OSMANAGERS
), Manager AS
(
SELECT USERID, MANAGERUSERID
from OS_MANAGERS
where [userID]='mbalasubrama'
union all
SELECT B.USERID, B.MANAGERUSERID
from Manager A
inner join OS_MANAGERS B ON A.MANAGERUSERID= B.USERID
)
select A.USERID , a.MANAGERUSERID
from OS_MANAGERS A
left join Manager B on A.USERID=B.USERID
where A.[userID]='mbalasubrama'
只有我看到用户的经理,其他顶级的不来
结果:
【问题讨论】:
-
请查看 OSMANAGERS 表架构!!
-
这是一个很好的起点。 spaghettidba.com/2015/04/24/…
标签: sql sql-server common-table-expression recursive-query