写一个SQL语句的时候,卡壳了。。。。
有这样的一个表:
categoryID cname summary RootID
8 第一个分类 第一个分类描述 0
9 第二个分类 第二个分类描述 0
10 第二个分类子类 第二个分类子类描述 9
11 第二个分类子类的子类 第二个分类子类的子类描述 10
13 第三个分类 第三个分类描述 0
14 第三个分类子类 第三个分类子类描述 13
现在想得到的结果是:第二个分类\第二个分类子类\第二个分类子类的子类
我是觉得要做一个循环,循环取得cname,再把取得的cname连接起来,但是卡壳了,谁给写一个,借鉴一下。。。。。
[解决办法]
select
a.cname+'/'+b.cname+'/'+c.cname
from
表 a,表 b,表 c
where
a.RootID=0
and
a.categoryID=b.RootID
and
b.categoryID=c.RootID
[解决办法]
如果层次不固定,那就用递归。