函数:递归分类

来源:互联网 发布:javascript 打印堆栈 编辑:程序博客网 时间:2024/05/22 10:26

CREATE Function GetChild(@regid int)
Returns @Child Table(id int ,productClass varchar(50),pid int )
As
Begin
Insert @Child Select  id,productClass,pid  From productClass Where id=@regid
if exists(select  id,productClass,pid from productClass Where pid=@regid)
begin
declare @id int
declare @productClass varchar(255)
declare @pid int

declare cursor1 cursor for
select id,productClass,pid from productClass where pid=@regid order by pid  for read only
open cursor1
fetch cursor1 into @id,@productClass,@pid
while @@fetch_status=0
begin
insert @Child select * from GetChild(@id)
fetch cursor1 into @id,@productClass,@pid
end
close cursor1
deallocate cursor1
end
return
End

 


 

原创粉丝点击