J'ai une table oracle avec un nombre record de 99896618.Oracle & Pagination
je dois aller chercher petit morceau de données (permet de dire 100 enregistrements) pour l'afficher sur une page Web, (Dans le monde web nous l'appelons pagination). Actuellement j'utilise la requête suivante pour accomplir cela mais les utilisateurs ne sont pas satisfaits de la performance.
SELECT * FROM (select rownum rnum,f.* from findings f where rownum<90000100)
WHERE rnum > 90000000
Actuellement, 1 min 22 secondes pour obtenir les résultats. Y at-il de toute façon pour le rendre meilleur. Je suis certainement ouvert à tout type de suggestions, y compris la modification de la structure de la table ou l'ajout d'index.
(Juste Pour votre information, je suis en utilisant ASP.NET comme la technologie et ADO.NET web côté serveur en tant que couche d'accès aux données et silverlight pour la présentation côté client)
J'ai rendu le numéro de page facilement accessible en créant une liste déroulante de numéros de pages (juste une description simplifiée, j'ai créé un contrôle personnalisé à travers lequel ils peuvent accéder facilement aux 1000 dernières pages). Peut-être que c'est une information utile, la plupart du temps (environ 95% du temps) les utilisateurs sont intéressés par les derniers (derniers) enregistrements. – funwithcoding