Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- create table fsecure(
- userid varchar(100),
- f_element varchar(6)
- );
- REM INSERTING into FSECURE
- SET DEFINE OFF;
- Insert into FSECURE (USERID,F_ELEMENT) values ('FFA','140');
- Insert into FSECURE (USERID,F_ELEMENT) values ('FFA','280');
- Insert into FSECURE (USERID,F_ELEMENT) values ('GGA','202118');
- Insert into FSECURE (USERID,F_ELEMENT) values ('GGA','140');
- Insert into FSECURE (USERID,F_ELEMENT) values ('RFA','202116');
- CREATE TABLE "FVAL"
- ( "FUND" VARCHAR2(6 ),
- "FUND_PRED" VARCHAR2(6)
- )
- REM INSERTING into FVAL
- SET DEFINE OFF;
- Insert into FVAL (FUND,FUND_PRED) values ('140',null);
- Insert into FVAL (FUND,FUND_PRED) values ('280',null);
- Insert into FVAL (FUND,FUND_PRED) values ('2000','140');
- Insert into FVAL (FUND,FUND_PRED) values ('20001','2000');
- Insert into FVAL (FUND,FUND_PRED) values ('20002','2000');
- Insert into FVAL (FUND,FUND_PRED) values ('20003','2000');
- Insert into FVAL (FUND,FUND_PRED) values ('202118','2000');
- Insert into FVAL (FUND,FUND_PRED) values ('2800','280');
- Insert into FVAL (FUND,FUND_PRED) values ('280001','2800');
- Insert into FVAL (FUND,FUND_PRED) values ('280002','2800');
- Insert into FVAL (FUND,FUND_PRED) values ('280003','2800');
- Insert into FVAL (FUND,FUND_PRED) values ('280004','2800');
- SELECT F.FUND
- FROM FVAL F
- CONNECT BY PRIOR F.FUND = F.FUND_PRED
- START WITH F.FUND IN ( SELECT F_ELEMENT FROM FSECURE WHERE USERID = 'FFA' );
- "FUND" "'FFA'"
- "140" "FFA"
- "2000" "FFA"
- "20001" "FFA"
- "20002" "FFA"
- "20003" "FFA"
- "202118" "FFA"
- "280" "FFA"
- "2800" "FFA"
- "280001" "FFA"
- "280002" "FFA"
- "280003" "FFA"
- "280004" "FFA"
- SELECT s.USERID, hier_f.FUND
- FROM FSECURE s
- JOIN ( SELECT F.FUND, connect_by_root(F.FUND) as root_fund
- FROM FVAL F
- CONNECT BY PRIOR F.FUND = F.FUND_PRED
- START WITH F.FUND IN ( SELECT F_ELEMENT FROM FSECURE)) hier_f
- on s.F_ELEMENT = hier_f.root_fund
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement