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:
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:
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
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:
Para mostrar las filas de la 3 a la 5, necesitas esta consulta:
MySQL 8.4SELECT * FROM Company LIMIT 2, 3;
O, lo que es lo mismo:
MySQL 8.4SELECT * FROM Company LIMIT 3 OFFSET 2;
MySQL 8.4SELECT * FROM Company LIMIT 3 OFFSET 2;
La consulta devuelve este resultado:
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 ⚡️
SELECT * FROM Company
LIMIT 3 OFFSET 2