🧚 ¡Oye! Beekeeper Studio es una GUI de MySQL rápida, moderna y de código abierto Descarga
14 de marzo de 2025 Por Matthew Rathbone

Cómo seleccionar las primeras N filas en MySQL

Seleccionar las primeras N filas de una tabla es una tarea fundamental cuando trabajas con bases de datos. En este tutorial veremos cómo hacerlo en MySQL con ejemplos prácticos.

Antes de seguir leyendo, quería contarte de nuestro cliente moderno de MySQL, Beekeeper Studio. Abre una tabla y te pagina las filas automáticamente, o haz clic derecho sobre ella y elige SQL: Select Top para obtener la consulta. Es gratis para MySQL, descárgalo aquí.

Uso de la cláusula LIMIT

La cláusula LIMIT en MySQL es una forma sencilla de indicar cuántas filas debe devolver el conjunto de resultados de una consulta.

Ejemplo: seleccionar las primeras 5 filas

Supón que tienes una tabla llamada employees con el siguiente esquema:

CREATE TABLE employees (
    id INT,
    name VARCHAR(100),
    salary DECIMAL(10, 2)
);

Quieres seleccionar a los 5 empleados con mayor salario, en orden descendente.

SELECT id, name, salary 
FROM employees 
ORDER BY salary DESC 
LIMIT 5;

Por qué funciona:

  1. ORDER BY salary DESC ordena las filas del salario más alto al más bajo.
  2. LIMIT 5 restringe el resultado a las primeras 5 filas después de ordenar.

Resultado esperado:

+----+----------+--------+
| id | name     | salary |
+----+----------+--------+
|  3 | Alice    | 90000  |
|  5 | Bob      | 85000  |
|  2 | Charlie  | 75000  |
|  6 | Diana    | 70000  |
|  4 | Edward   | 68000  |
+----+----------+--------+

Manejo de empates con LIMIT

Cuando hay valores empatados, usar solo LIMIT puede no dar resultados consistentes si no manejas los empates. Usa ORDER BY con más columnas para desempatar.

Ejemplo: manejar empates con un orden secundario

Para manejar salarios empatados, ordena por el id del empleado como criterio secundario:

SELECT id, name, salary 
FROM employees 
ORDER BY salary DESC, id ASC 
LIMIT 5;

Por qué funciona:

  • Agregar id ASC garantiza que, cuando los salarios estén empatados, siempre se elijan los empleados con el id más bajo.

Uso de LIMIT para paginar

Además de seleccionar las primeras N filas, a menudo necesitamos paginar los resultados seleccionando un rango específico de filas.

Ejemplo: seleccionar las siguientes 5 filas

Para paginar los resultados y seleccionar las filas 6-10 según el salario:

SELECT id, name, salary 
FROM employees 
ORDER BY salary DESC 
LIMIT 5 OFFSET 5;

Por qué funciona:

  • LIMIT 5 indica cuántas filas devolver.
  • OFFSET 5 omite las primeras 5 filas.

Resultado esperado:

El siguiente grupo de 5 empleados después de los primeros 5:

+----+---------+--------+
| id | name    | salary |
+----+---------+--------+
|  1 | Frank   | 67000  |
|  7 | Grace   | 64000  |
|  8 | Hannah  | 60000  |
|  9 | Ivan    | 59000  |
| 10 | Jane    | 58000  |
+----+---------+--------+

Conclusión

Seleccionar las primeras N filas en MySQL con la cláusula LIMIT es eficiente y fácil. Si puede haber empates, asegura un orden estable usando columnas adicionales en el ORDER BY. Esta técnica sencilla es esencial en muchas aplicaciones, como analítica y reportes, sobre todo cuando trabajas con grandes conjuntos de datos.

Al dominar estas técnicas, tendrás más control sobre la obtención y manipulación de datos en MySQL.

Beekeeper Studio es una GUI de MySQL gratuita y de código abierto

Últimamente he usado Beekeeper Studio para mi trabajo con MySQL y rápidamente se ha vuelto una de mis herramientas de bases de datos favoritas. La interfaz es limpia, moderna y sin distracciones, así que es fácil concentrarse en las consultas sin el desorden que tienen otras herramientas. - Surendra Singh

Beekeeper Studio es un cliente de MySQL rápido, intuitivo y fácil de usar. También es compatible con muchas otras bases de datos y funciona de maravilla en Windows, Mac y Linux.

La versión de Beekeeper para Linux tiene el 100% de las funciones, sin recortes ni concesiones.

Lo que dicen los usuarios de MySQL sobre Beekeeper Studio

Beekeeper Beekeeper Still a Newbie

Elegí este programa después de años de usar phpMyAdmin: se siente como entrar a un mundo de mayor calidad; aquí realmente sentí que de verdad se preocupan por el usuario. El concepto, la implementación, la experiencia práctica: le estoy sinceramente agradecido a Matthew por todo.

Alex M

Herramienta fabulosa, el IDE más práctico que he encontrado hasta ahora para administrar bases de datos Postgres y MySql: simplemente funciona, sin complicaciones :-)

¿Listo para mejorar tu flujo de trabajo con MySQL?

download Descarga gratis