제가 데이터 베이스 전문가가 아니라..
SQL문이 속도가 느려서 어딘가가 이상한 것 같은데요 모르겠습니다.
어디를 어떻게 고쳐주면 될까요?
SELECT DISTINCT
A.날짜1
, A.코드1
, A.이름1
, COUNT(A.이름2) CK2 --> 방금전에 CK인데 제가 잘못표기했네요. CK2입니다. 아래 CK와 다른 이름입니다.
, D.CK
, D.CIM
FROM
TBL1 A
, (
SELECT DISTINCT
B.날짜1
, B.코드1
, B.이름1
, COUNT(C.이름3) CIM
, COUNT(B.이름2) CK
FROM
TBL1 B
, TBL2 C
WHERE
B.날짜1 = ’20070620’
AND B.코드1 = ’AA’
AND B.날짜1 = SUBSTR(C.NO, 0, 8)
AND B.이름2 = C.이름2
AND B.이름1 != ’ ’
GROUP BY
B.날짜1
, B.코드1
, B.이름1
) D
WHERE
A.날짜1 = ’20070620’
AND A.코드1 = ’AA’
AND A.날짜1 = D.날짜1
AND A.코드1 = D.코드1
AND A.이름1 = D.이름1
AND A.이름1 != ’ ’
GROUP BY
A.날짜1
, A.코드1
, A.이름1
, D.CK
, D.CIM
ORDER BY
A.날짜1 DESC
, A.코드1 ASC
TBL1의 index 날짜1,이름2
처리시간이 거의 2-3분걸립니다.
고수님들의 의견을 부탁드립니다.