질문이 있습니다.
SELECT 컬럼01, 컬럼02, 컬럼03
FROM TABLE1 A
,(SELECT 직원번호
FROM TABLE2
WHERE 퇴직년월일 >= '20080101' ) B
WHERE A.직원번호 = B.직원번호
이런 쿼리에서
TABLE_ALIAS A 는 6천만건(컬럼 50개)
TABLE_ALIAS B 는 3만건 일때,
<질문1>
일반적인 튜닝포인트에 보면 작은 테이블을 앞에 두라고 하잖아요.
<방법1>처럼 FROM 절에서 앞에두라는 건가요?
<방법2>처럼 WHERE 절에서 앞에두라는 건가요?
<방법1>
SELECT 컬럼01, 컬럼02, 컬럼03
FROM (SELECT 직원번호
FROM TABLE2
WHERE 퇴직년월일 >= '20080101' ) A
,TABLE1 B
WHERE A.직원번호 = B.직원번호
<방법2>
SELECT 컬럼01, 컬럼02, 컬럼03
FROM TABLE1 A
,(SELECT 직원번호
FROM TABLE2
WHERE 퇴직년월일 >= '20080101' ) B
WHERE B.직원번호 = A.직원번호
<질문2>
TABLE1을 SELECT 직원번호 FROM TABLE1
하는게 좀더 효과적인가요?
|