antshome (œuvre originale) publié pour la première fois : le CSDN
termine la pagination de la base de données avec une instruction
select top 10 b.* from (sélectionnez les 20 premiers champs de clé primaire, triez le champ dans l'ordre des noms de table en triant les champs desc) a, nom de la table b où b. champ clé = a. Ordre des champs de clé primaire par a. Champ de tri
10 = Nombre d'enregistrements par page
20 = (Page actuelle + 1) * Nombre d'enregistrements par page
ou plusieurs instructions peuvent obtenir une pagination, mais le résultat final extrait est trié. Par ordre croissant.Si l'ensemble de résultats est requis, il est par ordre décroissant (Par exemple, le temps), il y a deux façons de le traiter
1. Utilisez l'instruction suivante, mais l'efficacité peut être inférieure
à select * from table
.nom b, (sélectionnez les 10 premiers champs de clé primaire, champ de tri dans (sélectionnez les 20 premiers champs de clé primaire, champ de tri dans Nom de la table ordre par champ de tri desc) a ordre par champ de tri) c où b champ de clé primaire = c. ordre des champs clés par c. Trier le champ desc
2. Traitez dans ado, déplacez le curseur du jeu d'enregistrements jusqu'à la fin, puis déplacez-le vers l'avant.
''Ce qui suit est un exemple d'
ensemble ASP rsTemp = Server.CreateObject("adodb.recordset")
Instruction rsTemp.Open, conn, 1,1
rsTemp.MoveLast
pour i = 1 à rsTemp.RecordCount
'Value....
rsTemp.MovePrevious
suivant
Après test, la méthode de pagination ci-dessus est plus rapide que l'utilisation de tables temporaires et est simple et facile à utiliser.