PostgreSQL - Cláusula LIMIT

El PostgreSQL LIMIT La cláusula se usa para limitar la cantidad de datos devueltos por la instrucción SELECT.

Sintaxis

La sintaxis básica de la instrucción SELECT con la cláusula LIMIT es la siguiente:

SELECT column1, column2, columnN
FROM table_name
LIMIT [no of rows]

La siguiente es la sintaxis de la cláusula LIMIT cuando se usa junto con la cláusula OFFSET:

SELECT column1, column2, columnN
FROM table_name
LIMIT [no of rows] OFFSET [row num]

LIMIT y OFFSET le permiten recuperar solo una parte de las filas que genera el resto de la consulta.

Ejemplo

Considere la tabla EMPRESA que tiene registros de la siguiente manera:

# select * from COMPANY;
 id | name  | age | address   | salary
----+-------+-----+-----------+--------
  1 | Paul  |  32 | California|  20000
  2 | Allen |  25 | Texas     |  15000
  3 | Teddy |  23 | Norway    |  20000
  4 | Mark  |  25 | Rich-Mond |  65000
  5 | David |  27 | Texas     |  85000
  6 | Kim   |  22 | South-Hall|  45000
  7 | James |  24 | Houston   |  10000
(7 rows)

El siguiente es un ejemplo, que limita la fila en la tabla de acuerdo con el número de filas que desea obtener de la tabla:

testdb=# SELECT * FROM COMPANY LIMIT 4;

Esto produciría el siguiente resultado:

id | name  | age | address     | salary
----+-------+-----+-------------+--------
  1 | Paul  |  32 | California  |  20000
  2 | Allen |  25 | Texas       |  15000
  3 | Teddy |  23 | Norway      |  20000
  4 | Mark  |  25 | Rich-Mond   |  65000
(4 rows)

Sin embargo, en determinadas situaciones, es posible que deba recoger un conjunto de registros de un desplazamiento en particular. Aquí hay un ejemplo, que recoge tres registros a partir de la tercera posición:

testdb=# SELECT * FROM COMPANY LIMIT 3 OFFSET 2;

Esto produciría el siguiente resultado:

id | name  | age | address   | salary
----+-------+-----+-----------+--------
  3 | Teddy |  23 | Norway    |  20000
  4 | Mark  |  25 | Rich-Mond |  65000
  5 | David |  27 | Texas     |  85000
(3 rows)