Outils pour utilisateurs

Outils du site


cours:informatique:dev:db:postgres:fondamentaux_postgresql:225_clause_limit

PostgreSQL LIMIT

Notes et traduction du tutoriel PostgreSQL Tutorial

LIMIT est une clause optionnelle de l'instruction SELECT qui contraint le nombre d'enregistrement retournés par la requête.

SELECT
  select_list
FROM
  TABLE_NAME
ORDER BY
  sort_expression
LIMIT
  ROW_COUNT;

L'instruction retourne “row_count” enregistrements générés par la requête. Si la valeur de “row_count” est 0, l'ensemble retourné est vide. Si la valeur de “row_count” est NULL, la requête retourne le même résultat que sans la clause LIMIT.

Pour ignorer un nombre d'enregistrements avant de retourner “row_count”, utiliser la clause OFFSET après LIMIT

SELECT
  select_list
FROM
  TABLE_NAME
ORDER BY
  sort_expression
LIMIT
  ROW_COUNT
OFFSET
  row_to_skip;

L'instruction commence par ignorer “row_to_skip” enregistrements avant de retourner les “row_count” enregistrements générés par la requête.

PostgreSQL évalue la clause OFFSET avant la clause LIMIT.

PostgreSQL stoke les enregistrements dans les tables sans les ordonner. Lorsque vous utiliser une clause LIMIT vous devriez toujours utiliser la clause ORDER BY pour controler l'ordre des enregistrments retenus.

Sans utiliser la clause ORDER BY vous pourriez obtenir un ensemble résultat changeant avec des enregistrements non ordonnés.

SELECT
  film_id,
  title,
  release_year
FROM
  film
ORDER BY
  film_id
LIMIT
  5;
 
-- Usage de la clause offset
SELECT
  film_id,
  title,
  release_year
FROM
  film
ORDER BY
  film_id
LIMIT 4 OFFSET 3;

Résumé

  • Utiliser les clauses LIMIT et OFFSET pour récupérer un sous ensemble d'enregistrements retournés par la requête.

◁ Précédent | ⌂ Retour au sommaire | Suivant ▷

cours/informatique/dev/db/postgres/fondamentaux_postgresql/225_clause_limit.txt · Dernière modification : 2025/04/06 14:11 de yoann