繁体   English   中英

使用通用SQL仅递归2级记录

[英]Recursive only 2 level records using common sql

我有一个Employee表,它是一个自引用表, managerId引用主键empID 我想通过给定的empId查找2级记录。

例如:如果给定empId=5 ,如果empId=5有子记录,则显示它们以及子记录中的子记录。 该数据库是SQL Server 2005。

更新:我想完整投影

这应该使您入门。 不知道“完全投影”是什么意思。 如果您是说每个孩子的每个孩子,那么您将需要一个循环。 但是,如果您知道只想降低2级,则此示例将起作用:

SELECT
   t1.empID as Parent_ID,
   t2.empID as Child_ID,
   t3.empID as Grandchild_ID
FROM 
   employee t1
   LEFT JOIN employee t2 ON t1.empID = t2.managerID
   LEFT JOIN employee t3 ON t2.empID = t3.managerID
WHERE t1.empID = @given_empID

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM