select
sum(decode(code2, '01', 3500, '02', 3500, '03', 3500, 0)) a,
sum(decode(code2, '04', 6000, '05', 6000, '06', 6000, 0)) b
from (
select
(select code2 from table2 where code = t1.code1) code2
from (
select
code1
from table1
where model = '1111'
and type = '1'
) t1
);
어떠한 테이블의 데이터를 가지고 와 금액을 계산하는 쿼리를 위와 같이 짰습니다... 안쪽의 select 구문에서는 속도가 빨리 나오는데... sum(decode... 구문까지 함께 실행하면 쿼리의 속도가 엄청 느려지는 문제가 있습니다.
대략.... table1 테이블은 데이터가 250만건, table2는 그 4배 이상의 데이터가 있는 테이블입니다.
인덱스는 타고 있는데... 조회가 1분 30초 정도 걸립니다... 왜 이렇게 느린걸까요.. 고수님의 답변 기다리겠습니다~ ㅠ