날짜별로 데이터가있는 a테이블과 b테이블이 있습니다.
뽑아야하는 데이터는 a가 주로 가지고있는데,
a의 전일 데이터를 뽑아야하는 컬럼이 3개
b에서 전년평균, 전년동월누계 등을 뽑아야합니다.
그러다보니 속도가 너무 느려지네요
select
(select aa from a
where a.data = sysdate-1),
(select avg(bb) from b
where a.data >=
TO_CHAR( ADD_MONTHS( '20130518', -12 ), 'YYYY' )||'0101'
and a.data <=
TO_CHAR( ADD_MONTHS( '20130518', -12 ), 'YYYY' )||'1201'),
(select sum(bbb) from b
where a.data >=
TO_CHAR( ADD_MONTHS( '20130518', -12 ), 'YYYY' )||'0101'
and a.data <=
TO_CHAR( ADD_MONTHS( '20130518', -12 ), 'YYYY' )||'1201'),
from a
이런식으로 구현하고있구요 key값으로 where조건은 다 걸려있는
상태입니다.. key들은 인덱스로 대부분 잡혀있구요..
현재 25초정도가나와서 너무늦네요.. 뾰족한수 없을까요?
|