문제 링크 : https://velog.io/@yooha9621/SQLP필기문제4장-조인튜닝3-스칼라서브쿼리
가입일시
를 선두컬럼으로 한 인덱스를 추가한다.고객번호
가 선두컬럼이고 거래일시
조건까지 수직 액세스를 진행할 수 있도록 아래 거래_X2 인덱스를 추가했다.[인덱스 추가]
고객_X1 : 가입일시
거래_X2 : 고객번호 + 거래일시
select /*+ leading(c) use_nl(t) */ c.고객번호, c. 고객명 , t.평균거래금액
from 고객 c
,(/*+ no_merge push_pred */ select round(avg(거래금액), 2) 평균거래금액
from 거래
where 거래일시 > trunc(sysdate, 'mm')
) t
where c.가입일시 >= trunc(add_months(sysdate, -1), 'mm')
and c.고객번호 = t.고객번호(+) ;
가입일시
를 선두컬럼으로 한 인덱스를 추가한다.고객번호
가 선두컬럼이고 거래일시
조건까지 수직 액세스를 진행할 수 있도록 아래 거래_X2 인덱스를 추가했다.[인덱스 추가]
고객_X1 : 가입일시
거래_X2 : 고객번호 + 거래일시
select c.고객번호, c. 고객명
,(/*+ no_unnest */ select round(avg(거래금액), 2) 평균거래금액
from 거래
where 거래일시 > trunc(sysdate, 'mm')
and 고객번호 = c.고객번호
) t
from 고객 c
where c.가입일시 >= trunc(add_months(sysdate, -1), 'mm')
;