Saltar al contenido principal
Documentos
FuncionesExpresionesKeywordsDeclaracionesCláusulas

Palabra clave DISTINCT en MySQL

La palabra clave DISTINCT en MySQL se utiliza para eliminar registros duplicados de los resultados de una consulta SELECT. Garantiza que la consulta devuelva sólo valores únicos en las columnas especificadas.

Utilización

La palabra clave DISTINCT se emplea cuando quieres asegurarte de que los resultados de la consulta contienen sólo entradas únicas, eliminando cualquier fila duplicada. Se coloca directamente después de la palabra clave SELECT.

SELECT DISTINCT column1, column2, ...
FROM table_name;

En esta sintaxis, DISTINCT se aplica a la combinación de columna(s) especificada(s), garantizando que sólo se devuelvan combinaciones únicas de valores.

Ejemplos

1. Uso básico

SELECT DISTINCT country
FROM customers;

Esta consulta recupera una lista de países únicos de la tabla customers, eliminando los duplicados.

2. Columnas múltiples

SELECT DISTINCT first_name, last_name
FROM employees;

En este ejemplo, la palabra clave DISTINCT garantiza que la combinación de first_name y last_name sea única en los resultados, que aún pueden incluir filas con el mismo nombre pero apellidos diferentes, y viceversa.

3. Combinado con la cláusula WHERE

SELECT DISTINCT category
FROM products
WHERE price > 50;

Aquí, la palabra clave DISTINCT se utiliza con una cláusula WHERE para encontrar categorías de productos únicas en las que el precio sea superior a 50, lo que aumenta tanto la especificidad como la singularidad de los resultados.

4. Combinado con ORDER BY

SELECT DISTINCT department
FROM employees
ORDER BY department;

Este ejemplo demuestra el uso de DISTINCT con ORDER BY para recuperar nombres de departamentos únicos y mantener un orden específico en los resultados.

Consejos y buenas prácticas

  • Utiliza DISTINTO con cuidado. Aunque DISTINCT elimina los duplicados, puede afectar al rendimiento, especialmente en grandes conjuntos de datos.
  • Aplícalo a las columnas necesarias. Utiliza DISTINCT sólo en las columnas en las que se requiera unicidad para evitar sobrecargas innecesarias.
  • Combínalo con ORDER BY. Cuando sea necesario, combina DISTINCT con ORDER BY para mantener un orden específico en los resultados.
  • Ten cuidado con los NULL. DISTINCT trata los valores de NULL como iguales, por lo que sólo se devolverá un NULL por cada combinación de columnas, lo que puede afectar a los resultados si hay varios NULLs presentes en varias columnas.

Perfeccionamiento de SQL para principiantes

Adquiere los conocimientos de SQL para interactuar con tus datos y consultarlos.
Empieza a aprender gratis