une autre solution serai de passer par une vue.

l'appel d'une vue est possible dans une sous-requete.

Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
create view FETCH_RENVERSE AS
SELECT ROWNUMBER() over (ORDER BY da DESC , dm DESC ,dj DESC)   AS row_number , 
da, dm, dj 
FROM Fdmpr

Ensuite :
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
select * 
from FETCH_RENVERSE
where row_number between X and Y
order by da, dm, dj

Les conditions de votre clause where qui concernent la selection de la vue seront remontées dans celle-ci quand l'optimiseur va créer sa requête donc ca marche assez bien.