안녕하세요. 요즘 데이타 마이그레션때문에 쿼리에 애를 좀 먹고 있는 한 직장인입니다.
다름이 아니라..
데이타 조회를 하는데, 오렌지에서 쿼리를 돌리면.. 일단 5초 내로 최초 100건은 나옵니다..
문제는 오렌지 툴에서 나머지 데이타를 확인하기 위해서 page down을 하면.. 그다음 100건부터는 10초 이상..
대략 데이타가 20000건정도 되는데.. page down으로 데이타를 다 내리는데.. 시간이 대책없이 오래 걸립니다.. 지금도 약 한시간 정도 지났는데.. 3000건 정도 조회 되고 있네요..;;;
이건 sql 문제일까요??;; 보통 100건 나올때 오래 걸리지 않으면.. 쿼리상 문제 없다고 생각을 하는데..
해당 관련 문제는 어떻게 찾아봐서 해결을 해야 할까요..;; 뭐 무한정 기다리면 시간이 해결이야 해주겠지만.. 이건 아닌거 같아서요.. 쿼리가 잘못됐으면 수정을 해야 할텐데..
샘플 쿼리 입니다..
SELECT /*+ INDEX(T1 RCM1101_16_IX05) */T1.CORP_CD
, T1.CTR_NO
, T1.DED_DGRE
, T1.DEMD_CUS_NO
, T1.RC_DT
, T1.RC_SEQ
, T1.ATAM_OC_AMT
, T1.RC_DEPCD
, (SELECT RPM_DC
FROM RCD1103_16
WHERE CORP_CD = T1.CORP_CD
AND CTR_NO = T1.CTR_NO
AND DED_DGRE = T1.DED_DGRE
AND DEMD_CUS_NO = T1.DEMD_CUS_NO
AND RC_DT = T1.RC_DT
AND RC_SEQ = T1.RC_SEQ
AND ROWNUM = 1
) AS RPM_DC
, T1.RC_STC
, (SELECT CTR_DEPCD
FROM EXM1000
WHERE CORP_CD = T1.CORP_CD
AND CTR_NO = T1.CTR_NO
AND DED_DGRE = T1.DED_DGRE
) AS CTR_DEPCD
-- , T2.CTR_DEPCD
, T1.RSOL_SLIP_DT
, T1.RSOL_SLIP_NO
, T1.BEG_RG_ENO
, T1.BEG_RG_DTM
, T1.FNL_MOD_ENO
, T1.FNL_MOD_DTM
FROM RCM1101_16 T1
WHERE T1.CORP_CD = 'A01'
AND T1.RC_STC = 'C9220'
AND T1.ATAM_OC_AMT > 0
AND EXISTS (SELECT 'O'
FROM BIZWIZ.SAP_CTR_INFO
WHERE CORP_CD = T1.CORP_CD
AND CTR_NO = T1.CTR_NO
AND DED_DGRE = T1.DED_DGRE
AND CLOSE_TYPE IN ('1', '2', '3', '4')
)
AND EXISTS (SELECT 'O'
FROM (SELECT /*+ INDEX(A RCM1101_16_IX04) */A.CORP_CD
, A.CTR_NO
, A.DED_DGRE
, MAX(A.RC_DT || A.RC_SEQ) AS SEQ
FROM RCM1101_16 A
WHERE CORP_CD = 'A01'
AND RC_STC = 'C9220'
GROUP BY A.CORP_CD, A.CTR_NO, A.DED_DGRE
) T
WHERE T.CORP_CD = T1.CORP_CD
AND T.CTR_NO = T1.CTR_NO
AND T.DED_DGRE = T1.DED_DGRE
AND SUBSTR(T.SEQ, 0, 8) = T1.RC_DT
AND SUBSTR(T.SEQ, 9, 3) = T1.RC_SEQ
)