...

ORDER BY y LIMIT/TOP: Ordena y limita tus datos en SQL

En SQL, no siempre necesitas ver todos los registros de una tabla.
A veces, solo quieres mostrar los primeros resultados, como los empleados con el salario más alto o los productos más vendidos.

Ahí es donde entran dos herramientas clave:

  • ORDER BY para ordenar los resultados de una consulta.
  • LIMIT o TOP para restringir la cantidad de registros devueltos.

Dominar estas cláusulas te ayudará a crear consultas más eficientes y a presentar datos de forma clara y ordenada.

En este artículo aprenderás:

  • Cómo ordenar resultados con ORDER BY.
  • Cómo mostrar solo los primeros registros con LIMIT y TOP.
  • Diferencias entre motores SQL como SQL Server, MySQL y PostgreSQL.
  • Buenas prácticas para optimizar el rendimiento.
  • Ejemplos listos para probar en db-fiddle.com.

La cláusula ORDER BY

La cláusula ORDER BY se utiliza para ordenar los resultados de una consulta según una o varias columnas.

Sintaxis general:

SELECT columnas
FROM tabla
ORDER BY columna [ASC | DESC];
  • ASC → Orden ascendente (predeterminado).
  • DESC → Orden descendente.

Ejemplo básico

Queremos ver a los empleados ordenados por salario de mayor a menor:

SELECT nombre, salario
FROM empleados
ORDER BY salario DESC;

Resultado:

nombresalario
Laura Sánchez95000
Ana Torres90000
Andrés Molina80000

Ordenar por múltiples columnas

Si dos empleados tienen el mismo salario, podemos ordenar también por nombre:

SELECT nombre, salario
FROM empleados
ORDER BY salario DESC, nombre ASC;

Esto garantiza que los datos estén organizados de forma clara.


LIMIT y TOP: mostrar solo los primeros registros

En bases de datos grandes, no siempre quieres traer todos los datos.
Aquí entran en juego LIMIT y TOP, que permiten restringir cuántos registros se muestran.


LIMIT (MySQL, PostgreSQL, SQLite)

Se utiliza al final de la consulta:

SELECT nombre, salario
FROM empleados
ORDER BY salario DESC
LIMIT 5;

Esto devuelve solo los 5 empleados con mayor salario.


TOP (SQL Server)

En SQL Server, la forma de limitar resultados es diferente:

SELECT TOP 5 nombre, salario
FROM empleados
ORDER BY salario DESC;

💡 Nota importante: En SQL Server, TOP se coloca inmediatamente después de SELECT.


Diferencias entre motores

Motor SQLComando para limitar
SQL ServerTOP
MySQLLIMIT
PostgreSQLLIMIT
SQLiteLIMIT

Combinando ORDER BY y LIMIT/TOP

Queremos ver los 3 empleados con menor salario:

MySQL / PostgreSQL / SQLite:

SELECT nombre, salario
FROM empleados
ORDER BY salario ASC
LIMIT 3;

SQL Server:

SELECT TOP 3 nombre, salario
FROM empleados
ORDER BY salario ASC;

Buenas prácticas

  1. Siempre usar ORDER BY con LIMIT o TOP
    Sin un criterio de orden, los resultados pueden ser impredecibles.
  2. Ordena por columnas indexadas
    Mejora el rendimiento y reduce el consumo de recursos.
  3. Evita usar SELECT * con grandes tablas
    Selecciona solo las columnas necesarias.
  4. Prueba tus consultas en un entorno seguro
    Plataformas como db-fiddle.com son ideales para practicar sin afectar datos reales.

Conclusión

ORDER BY y LIMIT/TOP son herramientas esenciales para analizar, ordenar y presentar datos en SQL.
Dominar estas cláusulas te permitirá trabajar de forma más eficiente y crear reportes precisos sin sobrecargar tus consultas.

Empieza a practicar ahora mismo con los ejemplos de este artículo en db-fiddle.com.

Deja un comentario

Seraphinite AcceleratorOptimized by Seraphinite Accelerator
Turns on site high speed to be attractive for people and search engines.