在ORACLE 数据库中有使用sql实现级联查询
select * //要查询的字段
from table //具有子接点ID与父接点ID的表
start with selfid=id //给定一个startid(字段名为子接点ID,及开始的ID号)
connect by prior selfid=parentid //联接条件为子接点等于父接点
举个栗子看一下 ---------》》》》》》
db数据字段如下:
task_id task_name parent_task_id
000001 A 0
000002 A_1 000001
000005 A_2 000001
task_id task_name parent_task_id
000001 A 0
000002 A_1 000001
000005 A_2 000001
查询语句:
select t.task_id ,t.task_name ,t.parent_task_id
from t_task t
start with task_id='000001'
connect by prior task_id = parent_task_id;
from t_task t
start with task_id='000001'
connect by prior task_id = parent_task_id;
查询结构为:
task_id task_name parent_task_id
000001 A 0
000002 A_1 000001
000005 A_2 000001
000001 A 0
000002 A_1 000001
000005 A_2 000001
-