From these 2 tables that define the hierachy and name of the nodes in the hierachy, SQL> select * from hq_tab; PARENT_ID CHILD_ID ---------- ---------- 16 0 2 16 2 16 17 17 13 14 30 15 30 0 0 1 1 3 1 4 1 5 3 8 8 11 11 14 4 9 9 12 12 15 4 10 10 13 20 rows selected. SQL> select * from hq_tab_name where rownum <5; ID ID_NAME ---------- ---------- 0 0_tag 1 1_tag 2 2_tag 3 3_tag SQL> how do you generate a lis like PNAME CNAME ---------- ---------- 0_tag 0_tag 0_tag 1_tag 0_tag 3_tag 0_tag 8_tag .... .... .... 0_tag 2_tag 1_tag 1_tag 1_tag 3_tag .... .... .... 1_tag 13_tag 2_tag 2_tag 2_tag 2_tag 2_tag 2_tag PNAME CNAME ---------- ---------- 2_tag 2_tag with v as (select child_id, parent_id, id_name from hq_tab h, hq_tab_name n where h.child_id=n.id) select v2.id_name pname, v1.id_name cname from v v1, v v2 start with v1.child_id=v2.child_id connect by prior v2.child_id=v2.child_id and prior v1.child_id=v1.parent_id;