병아리 님이 쓰신 글 :
: 아래 쿼리문이 파이어버드 1.5까지는 실행시 10여초도 안걸리던게 2.0에서는 1분이상 소요됩니다.
:
: 쿼리문은 이렇습니다.
:
: 테이블 A와 테이블 B가 있고 필드 C로 서로 연결되어 있습니다.
:
: SELECT * FROM A WHERE C NOT IN (SELECT C FROM B)
:
: 무슨 해결방법이 없을까요?
안녕하세요. 까막입니다.
제가 보기에는 1.5에서 10 여초도 안걸렸다는게 이상한데요.
데이터 량에 차이가 있나요?
위 구조는 인덱스를 전혀 못쓰는 식이거든요.
SELECT A.*
FROM A
LEFT JOIN B
ON (A.C = B.C)
WHERE B.C IS NOT NULL
이런 식으로 한번 해보시는게 어떨까요?
위대한 단군혼이 살아있는 나라.... 대한민국.
|