数据库结构为 create table  test(id int,parentid int,name varchar(50))insert into test 
select 1,0,'aa' union
select 2,1,'aaaa' union
select 3,1,'bbbb' union
select 4,2,'aaaaaa' union
select 5,2,'bbbbbb'
以此类推这样的数据根据这个表想查询这样的一个表格怎么实现
               aa
--------------------------------
      aaaa     |     bbbb
--------------------------------
aaaaaa | bbbbbb|
--------------------------------- 或
      |         |   aaaaaa
      |   aaaa  -------------
      |         |   bbbbbb
  aa  --------------
      |   bbbb
      |
在线等

解决方案 »

  1.   

    数据库中树形结构吗...如果是这样的结构,很难查,数据库至少得有TreeLevel字段吧,
    如果有左序和右序就更好了
      

  2.   

    damjmk2   能说明白点吗?
      

  3.   

    你这里已经有了parentid字段了,直接递归绑定到TreeView控件就可以实现。
      

  4.   

    不需要在Treeview里,要在一个表格里实现下级层次
      

  5.   

    public void AddTree(int ParentID, TreeNode pNode)        {            DataTable dt = new DataTable();            dt = op.BindGroup();            DataView dvTree = new DataView(dt);            //过滤ParentID,得到当前的所有子节点               dvTree.RowFilter = "parentid    =    " + ParentID;            foreach (DataRowView Row in dvTree)            {                TreeNode Node = new TreeNode();                if (pNode == null)                {          //添加根节点                       Node.Text = Row["groupname"].ToString();                    treeView1.Nodes.Add(Node);                    //Node.Expanded = true;                    AddTree(Int32.Parse(Row["groupid"].ToString()), Node);          //再次递归                   }                else                {        //添加当前节点的子节点                       Node.Text = Row["groupname"].ToString();                    pNode.Nodes.Add(Node);                    //Node.Expanded = true;                    AddTree(Int32.Parse(Row["groupid"].ToString()), Node);            //再次递归                   }            }        }private void bindtree()        {            treeView1.Nodes.Clear();            AddTree(0, (TreeNode)null);        }
      

  6.   

    gridview结合treeview
    repeater嵌套实现多层 
    gridview treeview
      

  7.   

    我不太明白你的需求,我做项目中的树形结构是这样保存的,id,parentId,TreeLevel(树级别字段,根目录为0,然后依次递增),LeftList(左序),RightList(右序),这样的结构只是为了能更好的遍历树结构
     
    你的问题应该是要遍历树结构吧,用我所说的这种结构实现的话SQL语句为select * from Table where (LeftList>(select LeftList from Table where TreeLevel = 0)) and (RightList<(select LeftList from Table where TreeLevel = 0))至于LeftList(左序),RightList(右序) 这两个字段是为了能用先序遍历树结构
      

  8.   

    需要这样的表格
    <table width="700" border="0">
      <tr align="center">
        <td  colspan="4">a</td>
      </tr>
     <tr align="center">
        <td colspan="2">aaa</td>
        <td colspan="2">bbb</td>
      </tr>
     <tr align="center">
        <td>aaaaaa</td>
        <td>bbbbbbbb</td>
        <td>&nbsp;</td>
        <td>&nbsp;</td>
      </tr>
     
    </table>