Saltar al contenido principal
La cláusula LIMIT controla cuántas filas se devuelven en los resultados de la consulta.

Sintaxis básica

Seleccionar las primeras filas:
LIMIT m
Devuelve las primeras m filas del resultado, o todos los registros si hay menos de m. Sintaxis alternativa de TOP (compatible con MS SQL Server):
-- SELECT TOP número|porcentaje nombre_columna(s) FROM nombre_tabla
SELECT TOP 10 * FROM numbers(100);
SELECT TOP 0.1 * FROM numbers(100);
Esto equivale a LIMIT m y puede utilizarse por compatibilidad con consultas de Microsoft SQL Server. Selección con OFFSET:
LIMIT m OFFSET n
-- o de manera equivalente:
LIMIT n, m
Omite las primeras n filas y devuelve las siguientes m. En ambas formas, n y m deben ser enteros no negativos.

Límites negativos

Selecciona filas desde el final del conjunto de resultados utilizando valores negativos:
SintaxisResultado
LIMIT -mÚltimas m filas
LIMIT -m OFFSET -nÚltimas m filas tras omitir las últimas n filas
LIMIT m OFFSET -nPrimeras m filas tras omitir las últimas n filas
LIMIT -m OFFSET nÚltimas m filas tras omitir las primeras n filas
La sintaxis LIMIT -n, -m equivale a LIMIT -m OFFSET -n.

Límites fraccionarios

Usa valores decimales entre 0 y 1 para seleccionar un porcentaje de filas:
SintaxisResultado
LIMIT 0.1El primer 10% de las filas
LIMIT 1 OFFSET 0.5La fila central
LIMIT 0.25 OFFSET 0.5El tercer cuartil (25% de las filas después de omitir el primer 50%)
  • Las fracciones deben ser valores Float64 mayores que 0 y menores que 1.
  • Los recuentos fraccionarios de filas se redondean al siguiente número entero.

Combinación de tipos de LIMIT

Puede combinar enteros estándar con OFFSET fraccionarios o negativos:
LIMIT 10 OFFSET 0.5    -- 10 filas comenzando desde el punto medio
LIMIT 10 OFFSET -20    -- 10 filas después de omitir las últimas 20

LIMIT … WITH TIES

El modificador WITH TIES incluye filas adicionales que tienen los mismos valores de ORDER BY que la última fila incluida por el límite.
SELECT * FROM (
    SELECT number % 50 AS n FROM numbers(100)
) ORDER BY n LIMIT 0, 5
┌─n─┐
│ 0 │
│ 0 │
│ 1 │
│ 1 │
│ 2 │
└───┘
Con WITH TIES, también se incluyen todas las filas que coinciden con el último valor:
SELECT * FROM (
    SELECT number % 50 AS n FROM numbers(100)
) ORDER BY n LIMIT 0, 5 WITH TIES
┌─n─┐
│ 0 │
│ 0 │
│ 1 │
│ 1 │
│ 2 │
│ 2 │
└───┘
La fila 6 se incluye porque tiene el mismo valor (2) que la fila 5. Lo mismo ocurre cuando el OFFSET se especifica con la palabra clave OFFSET:
SELECT * FROM (
    SELECT number % 50 AS n FROM numbers(100)
) ORDER BY n LIMIT 3 OFFSET 2 WITH TIES
┌─n─┐
│ 1 │
│ 1 │
│ 2 │
│ 2 │
└───┘
Al omitir las primeras 2 filas y tomar 3, normalmente se devolvería 1, 1, 2, pero se incluye el segundo 2 porque empata con la última fila.
WITH TIES no es compatible con límites negativos.
Este modificador puede combinarse con el modificador ORDER BY ... WITH FILL.

Consideraciones

Resultados no deterministas: Sin una cláusula ORDER BY, las filas devueltas pueden ser arbitrarias y variar de una ejecución de la consulta a otra. Límite del servidor: La cantidad de filas devueltas también puede verse afectada por la configuración limit.

Véase también

  • LIMIT BY — Limita el número de filas por cada grupo de valores; resulta útil para obtener los N resultados principales dentro de cada categoría.
Última modificación el 10 de junio de 2026