今天做项目遇到一个问题,
有产品分类A,B,C顶级分类,
期中A下面有a1,a2,a3子分类.
但是a1可能共同属于A和B,然后我的数据库是这样设计的
id name parnet
1A0
2B0
3a11,2
如果想要查询A的所有子类的话就要查询parent中包含1的,所以就萌生了这个办法.呵呵,
解决方案
复制代码 代码如下:
with cte as
(select * from tb where
union all
select tb.* from tb join cte on charindex(cast(cte.id as varchar(10)),tb.parentid)>0)
select * from cte
新闻热点
疑难解答