Bonjour,

Questions :
1. Quelle est le nombre d'enregistrements de chacune des 3 tables ?
2. Pourquoi ne pas fusionner les tables ANNONCE et ANNONCE_IMAGE
pour simplifier la jointure ?
3. Peux-tu nous donner la structure de tes 3 tables ? et le code de
création des 3 tables ?

Proposition
Il faut remplacer SUM(SAC.annonce_sms + SAC.annonce_mail + SAC.mailagence_r) par une fonction si possible.
-----------------------------------------------------------------------

SELECT AN2.id_annonce,
COUNT(id_image) AS nb_photo,
SUM(SAC.resultat_r) AS resultat_r,
SUM(SAC.annonce_d) AS annonce_d,
SUM(SAC.annonce_sms + SAC.annonce_mail + SAC.mailagence_r) AS other_stats
FROM ANNONCE AN2,
ANNONCE_IMAGE AI,
STATISTIQUE_ANNONCE_COMBINE SAC
WHERE AN2.id_annonce = AI.id_annonce(+)
AND AN2.id_presto = '566066'
AND AI.id_statut_annonce_image(+) > 0
AND SAC.id_annonce = AN2.id_annonce
AND SAC.date_statistique_annonce BETWEEN to_date('010408','ddmmyy') AND to_date('300408','ddmmyy')
GROUP BY AN2.id_annonce