속도 문제 때문에 머리아픕니다;; 0 1 2,420

by 윤태영 [2007.08.24 10:38:28]


0. 쿼리문장

SELECT extractValue(a.xbrlDoc, '/xbrl/rapm:StdDev_4W', 'xmlns="http://www.xbrl.org/2003/instance" xmlns:rapm="http://www.company.com/rapm/2007-10-01"') "STD_DEV",
    extractValue(b.xbrlDoc, '/xbrl/crapm:AvgRt_4W', 'xmlns="http://www.xbrl.org/2003/instance" xmlns:crapm="http://www.company.com/crapm/2007-10-01"') "AVGRT"
FROM  tbl_crapm b,
       (select prod_cd,
               extractValue(xbrlDoc, '/xbrl/info:CoCd', 'xmlns="http://www.xbrl.org/2003/instance" xmlns:info="http://www.company.com/info/2007-10-01"') co_cd
          from tbl_info d
         where chg_dt = (select max(chg_dt)
                           from tbl_info e
                          where e.prod_cd = d.prod_cd
                            and extractValue(e.xbrlDoc, '/xbrl/info:CloseGb', 'xmlns="http://www.xbrl.org/2003/instance" xmlns:info="http://www.company.com/info/2007-10-01"') = '1')
            and extractValue(xbrlDoc, '/xbrl/info:PeerCd', 'xmlns="http://www.xbrl.org/2003/instance" xmlns:info="http://www.company.com/info/2007-10-01"') = 'AAAAA') c,
        tbl_rapm a
 WHERE a.prod_cd = c.prod_cd
   and a.trd_dt = '20070616'
   and b.peer_cd = 'AAAAAA'
   and b.trd_dt = a.trd_dt
   and b.co_cd = c.co_cd;

tbl_info (prod_cd, chg_dt, xbrldoc(xmltype))
tbl_rapm (prod_cd, trd_dt, xbrldoc(xmltype))
tbl_crapm (peer_cd, trd_dt, co_cd, xbrldoc(xmltype))
으로 구성되어 있습니다.

 

1. tbl_info에서 xmltype 컬럼에서 xpath로 CloseGb = '1'이고, PeerCd = 'AAAAA' 인
   prod_cd 의 가장 최근 chg_dt 를 가지는 행들을 조회합니다.
   tbl_info에서 최종 조회하는 것은 prod_cd, CoCd 값입니다.

 

2. 1에서 조회한 prod_cd와 CoCd 값을 이용해, tbl_rapm, tbl_crapm과 조인을 수행하려고 합니다.

 

3. 최종적으로 조회되는 값들은 rapm의 StdDev_4W, crapm의 AvgRt_4W 입니다.

 

그리하여 구성된 쿼리 문장이 0입니다.
지금 너무 속도가 안나와서 실제 적용을 할 수가 없는 상황입니다.
아직 부족한 게 많아서 제대로된 해답이 안나오네요.
어디를 수정해서 다시 시도해 봐야될지 답답합니다.
(제가 아는 범위에서는 이리저리 시도해보고 있습니다 ^^;;)
혹시나 짚이는데가 있으시면 한말씀 부탁드립니다 ^^

기분 좋은 하루 보내세요~

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입