日期:2014-05-19  浏览次数:20383 次

怎么才能实现数据库中选取排序呢?不是简单的order by
我的数据库结构如下:
    id   level     father     title
其中id主键   level   值   是0或者1  
0是主分类   1是从分类(隶属于主分类)如果是1则father里存的是所属于的主分类ID
如果是0   则该数据行中father列是0
title是分类的名字


      我现在想做的是怎么样才能让选择数据按照这种排列方法?
      如
      id   level   father   title
      1       0           0           军队
      59     1           1           水军
    321     1           1           路军

      2       0           0           商业
      41     1           2           小商品
      42     1           2           大商品

类似这样   一个大类   然后后面跟小分类?

  是不是可以用指针实现   我没用过指针   谁帮忙看看

------解决方案--------------------
select id, level, father, title
from tblname
order by (case when father=0 then id*100000 else father*100000 end )+(case when father=0 then 0 else id end)