数据库表结构如下   
  id       name     parentID   
   1      a1         1
   2      b1         2
   3      c1         2
   4      a2         5
   5      b2         5
   6      c2         5  怎么样把里面的数据用树型结构列出来。   a1
       b1
       c1
   a2
       b2
       c2我现在只会把它写死的的列出来,如果要在表里面加数据怎么根据上面的结构显示出来?

解决方案 »

  1.   

    id     name       parentID 
    4      a2         5写错了
    parentID 因该是   1
      

  2.   

    SELECT * FROM table start with id in (select id from table) connect by prior id=parentID
    这样就以树的方式在数据库里排出来了,另外,顶楼主大力支持
      

  3.   

    是在JSP页面上,显示出来,详细点撒!
      

  4.   

    要是在页面直接显示就要搞个算法了,之前我有个现成JS的树直接用就可以了,不过是个JS树形菜单
      

  5.   

    要是那样在JSP页面显示的话,你数据库里最好加个字段(layer),即所在的层次,比如
    a1         layer 为0
           b1  layer 为1
           c1  layer 为1
    a2         layer 为0
           b2  layer 为1
           c2  layer 为1,然后用我的SQL语句从数据库里把记录取出,用ArrayList(排顺序的)封装取出来的记录,在页面逐个显示出来就行了,显示时再根据每条记录的layer而往后退几个空白不就形成树型了吗,现在是给你个思路,具体应该自己实现吧兄弟
      

  6.   

    select id,name,parentID,level
     from test
     start with id=0
     connect by prior id=parentID;
      

  7.   

    呵呵 楼主要不要我可以给你源代码的..我这里有一个写好了的..数型菜单的源代码..要的话可以给你...MSN:[email protected]
      

  8.   

    如果是oracle的话,oracle提供了树型结构查询语句~~就不用自己这样硬写了。如果其他数据库你就得自己折腾了。