oracle的递归查询
最近在看公司的OA系统,OA系统中基本都会有节点树,其中对于树上的数据展示,就是用了数据库的递归查询,在这里总结下递归查询。
现在存在如下的一棵树:
不会画树,将就一下,该树对应下面创建的表数据。
创建如下表:
create table DG
(
id NUMBER not null, --主键
parent_id NUMBER,-- 父节点
childer_id NUMBER-- 当前节点,当时名字没区号,也表示当前的值,即树中的值
)
创建如下数据:(除去最后一条数据,其他的数据与树中的数据严格一致)
insert into DG (id , childer_id)values (goods_seq.nextval , 6);
insert into DG (id , Parent_Id , Childer_id) values(goods_seq.nextval,6,10);
insert into DG (id , Parent_Id , Childer_Id) values(goods_seq.nextval,10,9);
insert into DG (id , Parent_Id , Childer_Id) values(goods_seq.nextval,9,1);
insert into DG (id , Parent_Id , Childer_Id) values(goods_seq.nextval,9,2);
insert into DG (id , Parent_Id , Childer_Id)