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;
LIMIT
et OFFSET
pour récupérer un sous ensemble d'enregistrements retournés par la requête.