Récupération de résultats paginés sans curseur

Un curseur est souvent utilisé lorsque l’application n’a besoin que d’une partie des résultats pour les afficher dans une page, puis en fonction des interactions avec les utilisateurs, récupérer les résultats suivants, et ainsi de suite.

Mais selon l’application et l’architecture logicielle, il n’est pas toujours possible de maintenir la session et la transaction ouvertes. Souvent dans un contexte d’application web, on exécute à nouveau la requête pour trouver les bons enregistrements. Les clauses LIMIT et OFFSET sont utilisables pour ne récupérer que les enregistrements utiles, à condition qu’ils soient triés, ici sur le champ cli_id :

SELECT cli_id,  cmd_cli_email_livraison 
   FROM commandes.commande_client 
   WHERE cmd_cli_time BETWEEN '2016-01-01' 
         AND '2016-02-01' 
   ORDER BY cli_id 
  LIMITLIMIT 10 
 OFFSET 10 ; 
┌────────┬─────────────────────────┐ 
│ cli_id │ cmd_cli_email_livraison...
Pour consulter la suite, découvrez le livre suivant :
couv_RIPOST.png
60-signet.svg
En version papier
20-ecran_lettre.svg
En version numérique
41-logo_abonnement.svg
En illimité avec l'abonnement ENI
130-boutique.svg
Sur la boutique officielle ENI
Précédent
Curseurs