Nueva entrada para repasar la cláusula de MySQL LIMIT, su funcionalidad es la de limitar el número de filas (registros/resultados) devueltas en las consultas SELECT. También establece el número máximo de registros a eliminar con DELETE.
Otros post sobre MySQL que os pueden interesar:
- Cláusula WHERE MySQL: Consultas condicionales en bases de datos
- MySQL ORDER BY: Ordenación de consultas SELECT
- MySQL SELECT: Realizar consultas a una base de datos
- MySQL LIKE: Búsquedas de patrones en tablas usando comodines
- MySQL COUNT: Obtener el número de resultados de una sentencia SELECT
Sintaxis de la cláusula de MySQL LIMIT en consultas SELECT
Veamos la sintaxis de LIMIT extraída de su web oficial:
1 2 3 |
SELECT campo1, campo2... FROM tabla1, tabla2... [LIMIT Comienzo, Longitud] |
Os explico el código superior donde LIMIT puede recibir hasta 2 parámetros con formato entero:
- Comienzo: Número del primer registro por el que comenzará el resultado devuelto.
- Longitud: El número máximo de filas devueltas por la consulta SELECT.
En caso de solo pasar un parámetro este indicará el número máximo de resultados devueltos y el comienzo será desde el registro 0.
Los registros devueltos por una consulta SELECT comienzan por el 0. En caso de que el límite máximo de resultados sea mayor que el número total de resultados se cogerán solamente los resultados disponibles.
Sintaxis de la cláusula de MySQL LIMIT con DELETE
Veamos su sintaxis cuando se aplica en la eliminación de filas.
1 2 3 |
DELETE FROM nombre_tabla [WHERE condicion] [LIMIT row_count] |
Tal y como podéis ver:
- Seleccionamos la tabla donde queremos eliminar los registros.
- Realizamos la condición WHERE para filtrar las columnas a eliminar.
- Con LIMIT establecemos el número máximo de registros / filas a eliminar.
Ejemplos de MySQL LIMIT
Vayamos con unos sencillos ejemplos:
1 2 3 |
SELECT nombre, apellidos, edad FROM usuarios LIMIT 30 |
Os explico el código superior:
- Se realiza la consulta a la tabla de la base de datos con SELECT.
- Con LIMIT y un solo parámetro estamos limitando a un máximo de 30 resultados.
Aquí otro ejemplo:
1 2 3 |
SELECT nombre, apellidos, edad FROM usuarios LIMIT 5,30 |
Os explico el código anterior:
- Misma consulta que el ejemplo anterior.
- En esta ocasión LIMIT posee 2 parámetros, 5 y 30. Seleccionará los resultados a partir del 5 registro hasta los siguientes 30.
Aquí otro ejemplo para poner límite en la eliminación de filas:
1 2 3 |
DELETE FROM usuarios WHERE edad = 30 LIMIT 5 |
Tal y como podéis ver ponemos el límite de 5 registros a eliminar dentro de la tabla ‘usuarios’ y que cumplan la condición de tener 30 años.