Bonsoir,

Je souhaiterais optimiser la requête suivante :


SELECT A.ID1 , A.ID2 , A.DATE, A.IDCLT1, A.CANAL

FROM TABLE A
WHERE A.ID1 = ?
AND A.DATE >= ?
AND A.ID2 >= ?
AND
(
(
A.IDCLT = ?
AND A.CANAL = 'AGC'
)
OR
(
A.REFCLT = ?
AND A.CANAL <> 'AGC'
)
)
ORDER BY A.ID1, A.ID2, A.DATE


Le DBA m'a recommandé d'enlever le OR de la requête mais j'en ai besoin !

De plus, je ne peux pas découper la requête en deux, car elle est utilisée par un programme paginé (d'où l'ORDER BY)

La clé primaire de la table est ID1, ID2 et REFCLT.

Merci.