高分~~~~~~~~请教这个需求怎么实现!
有一个表,如下 
                            ID                        BBB            PARNETID   
 1	1	|admin	|0 
 2	20009	|20009	|1 
 3	20010	|20010	|1 
 4	20011	|20011	|1 
 5	20012	|20012	|20009 
 6	20013	|20013	|20009 
 7	20014	|20014	|20010 
 8	20015	|20015	|20012 
 9	20016	|20016         |20014 
 其中,PARENTID为父节点的ID。能否用一行sql查询,查询出所有的子节点和孙子节点,比如ID为1,则得到的结果是所有的9行记录,若ID为20009,则查询出的结果为2,5,6,8行记录。若用单纯的sql不行。则实现该功能的存储过程怎么写?   
------解决方案--------------------select * from xxx  
 start with id=1 
 connect by prior bbb=parentid;   
 要不就是connect by prior parentid=bbb,记不太清了
------解决方案--------------------楼上说的是对的,递归实现   
 select * from  test 
 start with id=1 //根接点 
 connect by prior id=PARNETID   
 prior 表示上条纪录 
 prior id=PARNETID  上条纪录的 id=本条的 PARNETID