写程序是总是用到父子关系的数据,通过给定节点得到其子节点的记录,写视图但是不支持传入参数。
那就用 自定义函数来完成这个需求吧!
1.创建视图
create Function myFunc(@id Int)
Returns @tab table (id int,ParentId int,[Level] int,TName nvarchar(50))
As
begin
--DECLARE @typeId int;
--set @typeId =6;
with cte as
(
select * from tab where id= @id
union all
select a.* from tab a, cte b
where a.parentid = b.id
)
insert @tab select id ,ParentId,[Level],TName from cte;
return
End
2.表值函数调用
select * from dbo.myFunc(6)