Oracle中的父子和关系

时间:2013-11-19 05:16:02

标签: oracle parent relation

我们有一个名为test的表具有父级和子级信息。这两者之间的关系已在另一个名为TEST_REL的表中形成。

有些人可以帮助让孩子 - 父母帮忙。

感谢。

CREATE TABLE TEST
(        CHILD_PAR VARCHAR2(10 BYTE),
        CHILD_PAR_KEY VARCHAR2(10 BYTE)
) ;

Insert into TEST VALUES (CHILD_PAR,CHILD_PAR_KEY) values ('CHILD1','CHILD1KEY');
Insert into TEST values (CHILD_PAR,CHILD_PAR_KEY) values ('CHILD2','CHILD2KEY');
Insert into TEST VALUES (CHILD_PAR,CHILD_PAR_KEY) values ('CHILD3','CHILD3KEY');
Insert into TEST VALUES (CHILD_PAR,CHILD_PAR_KEY) values ('CHILD4','CHILD4KEY');
Insert into TEST VALUES (CHILD_PAR,CHILD_PAR_KEY) values ('PAR1','PAR1KEY');
Insert into TEST VALUES (CHILD_PAR,CHILD_PAR_KEY) values ('PAR2','PAR2KEY');
COMMIT;

CREATE TABLE TEST_REL
 (        CHILDKEY VARCHAR2(10 BYTE),
        PARENT_KEY VARCHAR2(10 BYTE)
 )

Insert into TEST_REL VALUES (CHILDKEY,PARENT_KEY) values ('CHILD1KEY','PAR1KEY');
Insert into TEST_REL VALUES (CHILDKEY,PARENT_KEY) values ('CHILD2KEY','PAR1KEY');
Insert into TEST_REL VALUES (CHILDKEY,PARENT_KEY) values ('CHILD3KEY','PAR2KEY');
Insert into TEST_REL VALUES (CHILDKEY,PARENT_KEY) values ('CHILD4KEY','PAR2KEY');
COMMIT;


Output
CHILD1 PAR1
CHILD2 PAR1
CHILD3 PAR2
CHILD4 PAR2

1 个答案:

答案 0 :(得分:0)

未经测试但试一试:

select t1.child_par,t2.child_par
from test t1
    ,test t2
    ,test_rel tr
where tr.childkkey=t1.child_par_key
and   tr.parent_key=t2.child_par_key