我有两张表
modulegroup(模块表)
modulelist(功能表)
modulegroup 结构数据
superiorid(父ID) id         name
0                 1         全部功能
1                 2         信息查询
1                 3         用户管理modulelist
id               name        groupId(外键引用modulegroup ID)
1               查询用户       3
2               用户角色管理   3
3               编辑信息       2如果只查modulegroup 一张表我能把树查出来
select * from MODULEGROUP t start with id=1 connect by prior id = t.superiorid
两张表怎么查
我还得查用户角色管理,查询用户是在用户管理这个节点下的
求教

解决方案 »

  1.   

    把两张表union all起来就可以了呗!再sql中加上nocycle就OK了
    select * from (select * from modulelist union all
    select * from modulegroup) t start with id=1 connect by nocycle prior id = t.superiorid
      

  2.   

    楼主最好把要的结果罗列出来,以利解读。
    是否是直接把树和modulelist join起来而已?
    SELECT * FROM 
    (select * from MODULEGROUP t start with id=1 connect by prior id = t.superiorid)temp left join modulelist t2 
    on temp.id=t2.groupid;