日期:2014-05-18  浏览次数:20410 次

在线等~~请大家帮忙。。有点难的。
有一张表如下:
NodeId(int)     ParentId(int)     NodeName(varchar(50))
1                       NULL                 1
2                       1                       1.1
3                       NULL                 2
4                       3                       2.1
5                       9                       2.2.2.1
6                       4                       2.1.1
7                       3                       2.2
8                       7                       2.2.1
9                       7                       2.2.2
想要的结果如下:
NodeName                                                                                      
1
1.1
2
2.1
2.1.1
2.2
2.2.1
2.2.2
2.2.2.1

请大家帮忙。谢谢了。。。

------解决方案--------------------
select NodeName from tab order by replace(NodeName, '. ', ' ')
--这种表最好加一个排序字段
------解决方案--------------------
我觉得直接按照NodeName字段排序就行了啊,除非你还有其他的目的