sélectionnez l'ID de thread dans
(
sélectionnez threadid, ROW_NUMBER() OVER (ordre par stickydate) comme Pos depuis cs_threads
) comme T
où T.Pos > 100000 et T.Pos < 100030
====================================== =====
Si le volume de données de la table cs_threads est très important, par exemple des centaines de millions d'enregistrements, alors cette méthode devrait être problématique
car, sélectionnez threadid dans
(
sélectionnez threadid, ROW_NUMBER() OVER (ordre par stickydate) comme Pos de cs_threads
) comme T
où T.Pos > 100000 et T.Pos < 100030
Cette instruction supprime select threadid, ROW_NUMBER() OVER (order by stickydate) comme Pos de cs_threads, puis effectue une pagination en dehors de SQL. Elle n'a pas été testée sur SQL2005, car la façon originale de l'écrire sur ORACLE est Non, c'est mieux. pour l'écrire comme ceci dans ORACLE : sélectionnez threadid dans
(
sélectionnez threadid, ROW_NUMBER() OVER (ordre par stickydate) comme Pos à partir de cs_threads a où a.pos<100030
) comme T
où T.Pos > 100000
Source : blog.joycode.com/dotey/archive/2006/01/16/70493.aspx