Bonjour,
Je voudrais filtrer un ensemble de lignes de ma requête.
J'ai le choix entre ROWNUM et ROW_NUMBER.
Je voudrais simplement connaitre lequel est le plus performant.
bonne journée
Cyril
Version imprimable
Bonjour,
Je voudrais filtrer un ensemble de lignes de ma requête.
J'ai le choix entre ROWNUM et ROW_NUMBER.
Je voudrais simplement connaitre lequel est le plus performant.
bonne journée
Cyril
ROW_NUMBER permet plus de possibilités notamment si vous triez vos résultats, par exemple : je veux les 10 premiers, vous "gagnez" une étape.
A savoir s'il y a une différence notable de coût d'exécution, je ne sais pas.
Rownum est une pseudo colonne, Row_number est une fonction analytique qui implique un order by donc leur fonctionnalité n’est pas vraiment équivalente.
La question est plutôt comment vous utilisez rownum et/ou row_number pour filtrer vos lignes et ensuite on pourrait vous dire si c’est performant ou pas.
merci de vos réponse.
Le filtre est compris dans une plage par exemple de 5 à 15.
Et le résultat de la requête doit être trié.
Et le tout se trouve dans une procédure stockée qui renvoit un refcursour.
Vous trouverez de bonnes informations en lisant ce sujet :
http://www.developpez.net/forums/d69...strements-faq/
merci à tous