Al terminar esta lección podrás
- Obtener valores únicos.
- Interpretar DISTINCT con varias columnas.
- Evitar colocarlo dentro de la lista de columnas.
Antes de empezar: SELECT y FROM. Explica en una frase qué recuerdas antes de continuar.
La idea, sin código
DISTINCT elimina filas duplicadas del conjunto de columnas seleccionado. Actúa sobre la combinación completa, no sobre una sola columna de forma aislada.
Pregunta guía: ¿qué representa cada fila antes y después de aplicar este concepto?
Sintaxis mínima
SELECT DISTINCT columna1, columna2
FROM tabla;Primer ejemplo guiado
| id | nombre | ciudad | |
|---|---|---|---|
| 1 | Ana | Madrid | ana@ejemplo.es |
| 2 | Luis | Valencia | luis@ejemplo.es |
| 3 | Marta | Madrid | NULL |
| 4 | Omar | Sevilla | omar@ejemplo.es |
| 5 | Nora | Bilbao | nora@ejemplo.es |
Analiza la consulta antes de comprobar el resultado:
SELECT DISTINCT ciudad
FROM clientes
ORDER BY ciudad;| ciudad |
|---|
| Bilbao |
| Madrid |
| Sevilla |
| Valencia |
Qué ocurre paso a paso
- Madrid aparece dos veces en la tabla.
- DISTINCT conserva una sola fila Madrid.
- ORDER BY organiza las ciudades únicas.
Error frecuente
Consulta o razonamiento problemático
SELECT ciudad, DISTINCT nombre FROM clientes;DISTINCT se coloca después de SELECT, antes de la lista de expresiones.
Práctica guiada
Resuelve una sola dificultad cada vez
Muestra las categorías distintas de productos.
Solución razonada
SELECT DISTINCT categoria FROM productos ORDER BY categoria;El resultado contiene una fila por cada categoría diferente.
Comprueba: identifica qué parte recupera, filtra, transforma, relaciona o modifica los datos.
Ahora sin guía
Transfiere lo aprendido
Muestra las combinaciones distintas de departamento y salario de empleados.
Comparar con una solución posible
SELECT DISTINCT departamento, salario
FROM empleados
ORDER BY departamento, salario;Puede existir otra solución válida. Comprueba que produce el resultado pedido y que puedes explicar cada cláusula.
Resumen para llevarte
- DISTINCT elimina duplicados del resultado.
- No modifica los datos.
- Con varias columnas analiza combinaciones.
Siguiente paso: Continúa con COUNT, SUM, AVG, MIN y MAX.