SQL根据指定节点ID获取所有父级节点和子级节点(转载)

--根据指定节点ID获取所有子节点--
WITH TEMP AS
(
SELECT * FROM table_name WHERE Id='4' --表的主键ID
UNION ALL
SELECT T0.* FROM TEMP,table_name T0 WHERE TEMP.Id=T0.ParentId --子级ID==父级ID
)
SELECT * FROM TEMP;


--根据指定节点ID获取所有父节点--
WITH TEMP AS
(
SELECT * FROM table_name WHERE Id='32' --表的主键ID
UNION ALL
SELECT T0.* FROM TEMP,table_name T0 WHERE TEMP.ParentId=T0.Id --父级ID==子级ID
)
SELECT * FROM TEMP;

原文地址:https://www.cnblogs.com/fengyeqingxiang/p/10947815.html

posted @ 2019-11-26 16:22  世人皆萌  阅读(1294)  评论(0)    收藏  举报