求个前辈指点迷津

我用使用递归查询,需要查询每个分类下的子分类。
我的代码如下:
SQL code

WITH lmenu([TYPE_NAME],[TYPE_ID],[Parent_Id], level) as 
( 
    SELECT [TYPE_NAME],[TYPE_ID],[Parent_Id],0 level FROM T_News_Type WHERE [Parent_Id] is null
    UNION ALL 
    SELECT a.[Type_Name],a.[TYPE_ID],a.[Parent_Id],b.level+1 FROM T_News_Type a,lmenu b 
    where a.[Parent_Id] = b.[TYPE_ID] 
)SELECT *  from lmenu


查询的结果却是这样的:

我是芒果果 1 NULL 0
服务指南 2 NULL 0
成长动态 4 NULL 0
每月晒晒 5 NULL 0
营养链 6 NULL 0
媒体介绍 8 1 1
专利保护 9 1 1
产品开发 10 1 1
数据库管理 11 1 1

我想达到的效果是根oracle数据库中start with ..connect by prior ..这样的效果。
也就是子类排在它的父类的后面
如:
【媒体介绍,专利保护,产品开发,数据库管理】应该在【我是芒果果】的后面

请教前辈怎么达到这样的效果?

作者: zouyou1986   发布时间: 2011-06-12

再排序一下试试,

作者: chuanzhang5687   发布时间: 2011-06-12

根据哪个字段排?

作者: zouyou1986   发布时间: 2011-06-12