oracle树形查询,oracle树形模糊查询

清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>

  由根节点查询所以子节点
  select * from mytable
    where 1=1
  start with name like '%起始节点%'
  connect by prior id = pid

    由子节点查询所以根节点
  select * from mytable
    where 1=1
  start with name like '%起始节点%'
  connect by prior pid = id 

     以上代码看是没有问题但经过本人验证会查询出不相关的节点,各种尝试都不能解决,只能妥协了

      select * from mytable
    where 1=1
  start with id in (select id from mytable where name like '%起始节点%')
  connect by prior pid = id 

     这样就解决了这个问题。算是绕过去了,后面有什么好的解决办法希望贴出来,谢谢。