日期:2014-05-17  浏览次数:20748 次

树形节点查询求解,求大神帮忙啊!思路或sql都ok啊。
以前的sql:select a.parenttreeid,a.orgstrucmanagetreeid,a.orgstrucmanagetreecode, a.orgstrucmanagetreename from orgstrucmanagetree a
  start with a.orgstrucmanagetreeid =? connect by prior a.orgstrucmanagetreeid = a.parenttreeid  


原始结果:
  parenttreeid orgstrucmanagetreeid orgstrucmanagetreecode orgstrucmanagetreename
100000001 100000380 test01 test01
100000380 100000400 test0101 test0101
100000400 100000401 test0102 test0102
100000201 100000260 01010201 四川
100000204 100000213 0101010102 吉林
100000205 100000219 0101010201 河北


求得到的结果为:
  部门code 部门名称 下属code 下属名称
  test01 test01 test0101 test0101
  test01 test01 test0102 test0102
  01010201 四川  
  0101010102 吉林
  0101010201 河北


菜鸟膜拜大神出山!


------解决方案--------------------
虽然没看懂意思,站个队,拿点分吧。
------解决方案--------------------
由你的语句,和结果看你的数据应是不全的

你的这句话:
select a.parenttreeid,a.orgstrucmanagetreeid,a.orgstrucmanagetreecode, a.orgstrucmanagetreename from orgstrucmanagetree a
start with a.orgstrucmanagetreeid =? connect by prior a.orgstrucmanagetreeid = a.parenttreeid 

根本得不到你说的那个结果,不管你的“?”填的是什么
------解决方案--------------------
从数据上看,非树型结构!
给你一个思路,你找出有对应树型结构的数据,然后union 上没关系的数据