--借鉴网上的
--树的表结构
create table tree(id int,name varchar(100),parentid int);
--函数
--获取该节点及其所有子节点
--params @id 节点ID
create function f_GetAllChildRole(@id varchar(20))
returns @re table(id varchar(20),name varchar(100),level int)
as
begin
declare @name varchar(100)
declare @l int
set @l=0
select @name=name from tree where id=@id
insert @re select @id,@name,@l
while @@rowcount>0
begin
set @l=@l+1
insert @re select a.id,a.name,@l
from tree a,@re b
where a.parentId=b.id and b.level=@l-1
end
return
end