MySQL

MySQL LIMIT: Limitar el número de filas en consultas SELECT y DELETE

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:

Sintaxis de la cláusula de MySQL LIMIT en consultas SELECT

Veamos la sintaxis de LIMIT extraída de su web oficial:

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.

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:

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:

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:

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.

compartir
Publicado por
Aner Barrena