Hi

I have a small SQL, was wondering if anyone´s got any suggestion to improve it

cheers


SELECT A.*, B.OFICINAS, C.FOTOS
FROM
ICDBA.IC_PROMOCIONES A,
(select count(COD_OFI) AS OFICINAS, COD_AGE, COD_RED, COD_PRM
FROM ICDBA.PR_PROMOCIONOFI
GROUP BY COD_AGE, COD_RED, COD_PRM) B,
(SELECT COUNT(COD_TIP_IMG) as fotos, COD_RED, COD_AGE, COD_PRM
FROM ICDBA.IC_FICH_GRAFICOS
GROUP BY COD_AGE, COD_RED, COD_PRM) C
WHERE
A.COD_AGE = B.COD_AGE AND
A.COD_RED = B.COD_RED AND
A.COD_PRM = B.COD_PRM AND
c.COD_AGE (+)= a.COD_AGE AND
c.COD_RED (+)= a.COD_RED AND
c.COD_PRM (+)= a.COD_PRM
AND A.COD_RED=2
AND A.COD_AGE=596
AND A.COD_PRM=3331
/

Query Plan
--------------------------------------------------------------------------------
SELECT STATEMENT Cost= 5
NESTED LOOPS OUTER
NESTED LOOPS
TABLE ACCESS BY INDEX ROWID IC_PROMOCIONES
INDEX RANGE SCAN IC_PROMOCIONES_PK
VIEW
SORT GROUP BY
INDEX RANGE SCAN PR_PROMOCIONOFI_PK
VIEW
SORT GROUP BY
TABLE ACCESS FULL IC_FICH_GRAFICOS