select *

from 사원 a, 직업 b

where a.고용일자 = '20250423'

and a.직업ID = b.직업ID

and b.직업구분 = 'A'

and b.최고연봉 >= 1500



인덱스 구성


직업_PK(직업ID)

직업_X01(직업구분)

직업_X02(최고연봉)


사원_PK(사원ID)

사원_X01(직업ID)

사원_X02(고용일자)



1. 직업_X01(직업구분) + 사원_X01(직업ID)

2. 직업_X02(최고연봉) + 사원_X01(직업ID)

3. 직업_X01(직업구분) + 사원_X02(고용일자)

4. 직업_PK(직업ID) + 사원_X01(직업ID)


1,2번은 당연한거라 넘어가고
3번은 애매한데 가능은 합니다

직업구분 인덱스 타면서 직업 레코드 읽음
고용일자 만족하는 사원 레코드를 읽음
이 두 집합을 카티전 프로덕트한 후에
a.직업ID = b.직업ID 조건을 필터링합니다

정답은 4번입니다
위 조인과정에서 직업ID가 전혀 효용성이 없습니다.