Bonjour,

Je bloque sur une requete dont le but est de paginer un jeu de resultat trier selon 3 colonnes de type "int" : CHAP, SEQ1, SEQ2

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
SELECT * FROM ( 
	SELECT TOP 40 * from ( 
		SELECT TOP 1000 * FROM rg ORDER BY CHAP, SEQ1, SEQ2
 ASC ) 
	as tbl1 ORDER BY CHAP, SEQ1, SEQ2 DESC ) 
as tbl2 order by CHAP, SEQ1, SEQ2 ASC
Avec cette requete, le tri est correct mais le jeu de resultat est constament identique , peu import la valeur du 2ième TOP ("TOP 1000").

en Modifiant un peu cette requete :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
SELECT * FROM ( 
	SELECT TOP 40 * from ( 
		SELECT TOP 1000 * FROM rg ORDER BY CHAP, SEQ1, SEQ2
 ASC ) 
	as tbl1 ORDER BY CHAP DESC ) 
as tbl2 order by CHAP, SEQ1, SEQ2 ASC
Je reussi à paginer mais le resultat est bizzare
( l'enregistrement placé à la position 28 de la page 1 se retrouve en 1ere position de la page 2 )

Voila j'ai vraiment du mal à comprendre tout ce fonctionnement ..

Pouvez-vous m'aidé ?

Merci