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使用表达式递归查询)