DÍA 06Fundamentos y filtros · SQL para Análisis de Datos

Ordena clientes con varios criterios y pagina una muestra de forma reproducible.

Día 6 15 minInicial

Ordenar resultados con ORDER BY

Objetivos

Al terminar podrás controlar el orden de salida y pedir una página pequeña de resultados sin confundir el orden de almacenamiento con el orden de consulta.

Concepto

Una tabla no promete devolver sus filas en un orden particular. ORDER BY ordena el resultado: ASC va de menor a mayor o de A a Z; DESC invierte ese criterio. Puedes ordenar por varias columnas. MySQL usa la siguiente solo cuando hay empate en la anterior.

LIMIT restringe la cantidad de filas y OFFSET indica cuántas filas saltar. Un desempate como customer_id evita que nombres iguales cambien de posición entre páginas.

Ejemplo

Muestra la segunda página de clientes activos cuya tienda principal asignada es la 1:

SELECT customer_id, first_name, last_name, active
FROM customer
WHERE active = 1
  AND store_id = 1
ORDER BY last_name ASC, first_name ASC, customer_id ASC
LIMIT 5 OFFSET 5;

El orden se aplica antes de limitar el resultado. Esta consulta devuelve hasta cinco filas después de saltar las primeras cinco.

Nota

Importante: LIMIT sin ORDER BY puede mostrar una muestra distinta. Para recorrer resultados por páginas, usa siempre un orden que termine en una clave única.

Práctica guiada

  1. Cambia ASC por DESC para last_name y predice qué cambia.
  2. Quita el filtro store_id y deja el orden por apellido, nombre e identificador.
  3. Cambia LIMIT 5 OFFSET 5 por LIMIT 10 y explica por qué ahora es la primera página.

Reto

Muestra hasta ocho clientes inactivos. Ordénalos por apellido de Z a A, luego por nombre de A a Z y finalmente por customer_id. Devuelve customer_id, first_name, last_name y active.

Quiz

¿Para qué sirve el último criterio customer_id en el ejemplo?

  • A. Para crear una nueva columna.
  • B. Para desempatar nombres repetidos y hacer estable la paginación.
  • C. Para filtrar la tienda.

Respuesta: B. La clave única fija el orden cuando los nombres coinciden.

Comprobación

Ya puedes filtrar y presentar una muestra reproducible. Ahora usarás esas consultas para conectar tablas relacionadas.

TU PROGRESO

Cargando estado…