안녕하세요. 쿼리 좀 도움얻고자 글을 씁니다.
화면 목록 가져오는 쿼리인데 데이터는 10개로 짤라서 그런지 느리지만 간당하게 나옵니다만 카운트 조회가 문제네요
select count(*)
from (
select fno
from ta, tb, tc, td
where ta.fno = tb.fno
and ta.fno = tc.fno(+)
and td.fno = td.fno
) a, (
select fno as yno from te where fseq in ( select max(fseq) from te group by fno )
) b
where a.fno = b.yno(+)
)
where 절의 다른 조건들은 제거했고 테이블간 연결고리만 대략 이런 경우입니다.
두개의 인라인뷰는 각각 실행시 1초안으로 떨어지는데 저렇게 실행하면 1분30초가 걸리네요 a=약 2천건, b=약 1천건 입니다.
a만 조회되도 행갯수는 나오는데 a와b의 조인 조건뒤에 다른조건이 하나 걸릴수가있네요.
인라인뷰 b를 a안으로 같이 조인시켜봐도 똑같네요
도움 좀 부탁드립니다.
혹시 인라인뷰에도 인덱스를 적용시킬수가 있는가요?