首页 > 代码库 > SQLserver2008使用表达式递归查询(由父往子,由子往父)

SQLserver2008使用表达式递归查询(由父往子,由子往父)

SQLserver2008使用表达式递归查询语句

--由父项递归下级
with cte(id,parentid,text)
as
(--父项
select id,parentid,text from treeview where parentid = 450
union all
--递归结果集中的下级
select t.id,t.parentid,t.text from treeview as t
inner join cte as c on t.parentid = c.id
)
select id,parentid,text from cte
---------------------
--由子级递归父项
with cte(id,parentid,text)
as
(--下级父项
select id,parentid,text from treeview where id = 450
union all
--递归结果集中的父项
select t.id,t.parentid,t.text from treeview as t
inner join cte as c on t.id = c.parentid
)
select id,parentid,text from cte

SQLserver2008使用表达式递归查询(由父往子,由子往父)