编程语言


SQLSERVER2005 中树形数据的递归查询

网络编程 SQLSERVER2005 中树形数据的递归查询 06-22
问题描述。借用了adinet的问题。参见:http://www.jb51.net/article/28670.htm

今天做项目遇到一个问题,

有产品分类A,B,C顶级分类,

期中A下面有a1,a2,a3子分类.

但是a1可能共同属于A和B,然后我的数据库是这样设计的

id name parnet 1 A 0 2 B 0 3 a1 1,2

如果想要查询A的所有子类的话就要查询parent中包含1的,所以就萌生了这个办法.呵呵,
解决方案

 
with cte as
(select * from tb where id='1'
union all
select tb.* from tb join cte on charindex(cast(cte.id as varchar(10)),tb.parentid)>0)
select * from cte


编辑:编程语言

标签:子类,是这样,一个问题,期中,产品分类