Limitar el resultado: la cláusula LIMIT

La cláusula LIMIT permite obtener un rango concreto de registros de una o varias tablas.

Estructura general de una consulta con LIMIT

Sintaxis con coma:

MySQL 8.4
SELECT campos_tabla
FROM nombre_tabla
LIMIT [filas_omitidas,] num_filas;
  • [ ]parte opcional
campos_tabla
Las columnas que aparecerán en el resultado.
nombre_tabla
La tabla de la que se seleccionan los datos.
filas_omitidas

Cuántas filas se omiten antes de mostrar el resultado. Si no lo indicas, se empieza por la primera fila.

Opcional
num_filas

Cuántas filas se muestran. Si el resultado tiene menos filas, se muestran todas.

Sintaxis con OFFSET:

MySQL 8.4
SELECT campos_tabla
FROM nombre_tabla
LIMIT num_filas [OFFSET filas_omitidas];
  • [ ]parte opcional
campos_tabla
Las columnas que aparecerán en el resultado.
nombre_tabla
La tabla de la que se seleccionan los datos.
num_filas

Cuántas filas se muestran. Si el resultado tiene menos filas, se muestran todas.

filas_omitidas

Cuántas filas se omiten antes de mostrar el resultado. Si no lo indicas, se empieza por la primera fila.

Opcional
MySQL 8.4
SELECT campos_tabla
FROM nombre_tabla
LIMIT num_filas [OFFSET filas_omitidas];
  • [ ]parte opcional
campos_tabla
Las columnas que aparecerán en el resultado.
nombre_tabla
La tabla de la que se seleccionan los datos.
num_filas

Cuántas filas se muestran. Si el resultado tiene menos filas, se muestran todas.

filas_omitidas

Cuántas filas se omiten antes de mostrar el resultado. Si no lo indicas, se empieza por la primera fila.

Opcional

Ejemplo de uso

Tomemos la tabla Company:

idname
1Don_avia
2Aeroflot
3Dale_avia
4Air_France
5British_AW

Para mostrar las filas de la 3 a la 5, necesitas esta consulta:

MySQL 8.4
SELECT * FROM Company LIMIT 2, 3;

O, lo que es lo mismo:

MySQL 8.4
SELECT * FROM Company LIMIT 3 OFFSET 2;
MySQL 8.4
SELECT * FROM Company LIMIT 3 OFFSET 2;

La consulta devuelve este resultado:

idname
3Dale_avia
4Air_France
5British_AW

En esta consulta se omiten las dos primeras filas de la tabla (1, 2) y después se muestran los tres registros siguientes (3, 4, 5).

Y ahora pruébalo tú mismo ⚡️

MySQL 8.4
SELECT * FROM Company
LIMIT 3 OFFSET 2
Número de registros omitidos
Número de registros que se muestran
idname
11Don_avia
22Aeroflot
33Dale_avia
44Air_France
55British_AW
Selecciona filas de la tabla para ver cómo cambia la consulta ⚡