안녕하세요 서브쿼리 하나 관련해서 질문드립니다.
사업소별로 갯수를 확인해서 더해야되는 쿼리를 만들었는데, 같은 테이블을 중복으로 엑세스하는 문제로 인하여 성능이 지연이 되는거 같은데 서브쿼리를 어떻게 수정해야될지 도움 부탁드립니다.
SQL은 아래와 같습니다.
select (A.CNT + B.CNT) CNT
from (select count(1) cnt
from deliver a
where a.fk_off_cd =:1
and a.year> to_char(sysdate, 'yyyy')-2
and a.fk_dep_off_cd =:2
and a.fk_dep_cd =:3
and a.fk_deli_sts_cd in( select no from code where tp='0014' and cd in('00001','00002')))A
(select count(1) cnt
from deliver a
where a.FK_OFF_CD=:4
and a.year> to_char(sysdate, 'yyyy')-2
and a.fk_dep_off_cd =:5
and a.fk_dep_cd =:6
and a.fk_deli_sts_cd in( select no from code where tp='0014' and cd ='0004')
and (a.deli1_dt = to_char(sysdate, 'yyyymmdd')
or a.deli2_dt = to_char(sysdate, 'yyyyymmdd')
or a.deli3_dt = to_char(sysdate, 'yyyymmdd')))B
조언부탁드립니다. 감사합니다.