--创建表
declare @T table (ID int,pid int,NAME varchar(6))
insert into @T
select 1,0,'上衣' union all
2,'鞋子 3,'裤子 4,1,'毛衣 5,'衬衫 6,2,'球鞋 7,'皮鞋 8,3,'西裤 9,'筒裤 10,4,'羊毛衣 11,'牛毛衣 12,5,'白衬衫 13,'黑衬衫'
@i int
set @i =1 --参数假定为
;with
depts as(
select * from @T
where ID = 1
union all
select a.*
from @T a, depts b
where a.pid = b.ID
)
--取出所有id为1的子项
* from depts
/*
ID pid NAME
----------- ----------- ------
1 0 上衣
4 1 毛衣
5 1 衬衫
12 5 白衬衫
13 5 黑衬衫
10 4 羊毛衣
11 4 牛毛衣
*/
@【叶子】http://blog.csdn.net/maco_wang 原创作品,转贴请注明作者和出处,留此信息。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。