您的位置:首页 > 数据库

sql server使用cte实现树结构递归查询

2016-07-08 16:10 387 查看
sql server使用cte实现树结构递归查询

 

use
xxx

go

Begin

--获得所有有权限的叶子节点

Declare
@Tempsubqrys
TABLE(

id
int,

Parentid
int,

planname
nvarchar(50),

Grd
int

);

 

with
subqry(id,Parentid,planname,Grd)
as (

select
id,Parentid,planname,Grd
from
T_Sch_Plan
where
id
= 2

union
all

select
t.id,t.Parentid,t.planname,t.Grd
from
T_Sch_Plan
t,subqry

where
t.parentid
=
subqry.id

)

insert
@Tempsubqrys(id,Parentid,planname,Grd)
(select
*
from
subqry
where
subqry.Grd
=4 and
subqry.id
not
in
(select
Planid
from
T_Sch_Plan_User
where
Fesid=1));

select
*
from
@Tempsubqrys;

end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: