树形数据库怎么获取子类

像这样子,然后我要获取女装的所有子类,上表有连衣裙,女上装,然后还有优选新品和A字裙,我该怎么写存储过程,我用的是Sqlserver2008帮忙解答下,谢谢... 像这样子,然后我要获取女装的所有子类,上表有连衣裙,女上装,然后还有优选新品和A字裙,我该怎么写存储过程,我用的是Sqlserver2008
帮忙解答下,谢谢
展开
 我来答
百度网友2dca20d
2015-08-03 · TA获得超过4036个赞
知道大有可为答主
回答量:2638
采纳率:77%
帮助的人:1021万
展开全部
with A as(select id,CAST(名字 as varchar(200)) 名字, 父亲名字 from 表名 where 父亲名字=0
union all
select B.id,cast(A.名字+'\'+B.名字 as varchar(200)),B.父亲名字
from A join 表名 B on A.id=B.父亲名字)
select *
from A
order by 2

 将上述语句中的两个“表名”改为你自己的表名即可

更多追问追答
追问
这个有些乱。。。
那删除怎么弄
追答
with A as(select id,CAST(名字 as varchar(200)) 名字, 父亲名字 from 表名 where 父亲名字=0
union all
select B.id,cast(A.名字+'\'+B.名字 as varchar(200)),B.父亲名字
from A join 表名 B on A.id=B.父亲名字)
select *
from A where id not in(select 父亲名字 from 表名)
order by 2
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式