注意,数据都存在一个表中的

解决方案 »

  1.   

    PID是否是Parent ID? 怎么有两条ID=3的记录,PID还不一样。你都没有解释清楚这个table的数据,问题没有描述清楚。如果数据量不大的话(几千条以下),一次把所有数据都读出来,然后建立一个树结构。对于一个ID,它的PID是唯一的,同时数据量比较大的话(或者可能会很大),建议你给table增加一个"编码"的字段。编码的规则就是把某个ID及其所有的ParentID组合起来。
    例如:
    ID  PID CODE
    10  5   "1.3.5.10"
    5   3   "1.3.5"
    3   1   "1.3"
    1   0   "1"这样的话,利用CODE来进行查询就容易得多了。
      

  2.   

    楼上的高手基本上还是理解了我要解决的问题,而且你的办法也是可行的,先谢过了,先前一直在考虑怎么用递归方法取出来,非常感谢!