1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| SQL> with employer as (
2 select 1 as emp, 1 as mgr from dual union all
3 select 2 as emp, 1 as mgr from dual union all
4 select 3 as emp, 1 as mgr from dual union all
5 select 4 as emp, 3 as mgr from dual union all
6 select 5 as emp, 4 as mgr from dual union all
7 select 6 as emp, 4 as mgr from dual union all
8 select 12 as emp, 12 as mgr from dual union all
9 select 15 as emp, 12 as mgr from dual union all
10 select 14 as emp, 12 as mgr from dual union all
11 select 16 as emp, 15 as mgr from dual
12 ),
13 livraison as (select 1 as id, 1 as mgr from dual)
14 SELECT emp,mgr
15 FROM employer
16 start WITH emp in (select distinct mgr from livraison)
17 connect BY nocycle mgr = prior emp;
EMP MGR
---------- ----------
1 1
2 1
3 1
4 3
5 4
6 4
6 ligne(s) sÚlectionnÚe(s). |
Partager