A cláusula DISTINCT no SQL é uma ferramenta simples, mas extremamente útil para remover valores duplicados dos resultados de uma consulta. Quando você está lidando com grandes volumes de dados, o DISTINCT ajuda a garantir que os registros únicos sejam retornados, oferecendo uma visão mais clara e precisa das informações.
1. O que é a cláusula DISTINCT?
A cláusula DISTINCT é usada para eliminar registros duplicados em uma consulta SQL, retornando apenas os valores únicos para a(s) coluna(s) especificada(s). É útil quando você deseja evitar dados repetidos nos resultados e precisa de uma lista com valores únicos.
Sintaxe básica:
SELECT DISTINCT coluna1, coluna2, ...
FROM tabela;
coluna1, coluna2: As colunas cujos valores serão avaliados para eliminar duplicatas.
tabela: A tabela de onde os dados estão sendo extraídos.
2. Exemplo de uso de DISTINCT
Suponha que você tenha uma tabela chamada clientes
com uma coluna cidade
e deseja listar as cidades onde seus clientes moram, sem duplicatas:
SELECT DISTINCT cidade
FROM clientes;
Neste exemplo, a consulta retorna uma lista de cidades únicas, removendo as cidades duplicadas onde múltiplos clientes podem residir.
3. Exemplo com múltiplas colunas
O DISTINCT pode ser aplicado em mais de uma coluna ao mesmo tempo. Quando você usa múltiplas colunas, o SQL avalia as combinações de valores entre essas colunas e retorna apenas as combinações únicas.
Exemplo:
SELECT DISTINCT cidade, estado
FROM clientes;
Aqui, a consulta retorna todas as combinações únicas de cidade e estado, ou seja, elimina duplicatas considerando ambas as colunas juntas.
4. Comparação entre DISTINCT e GROUP BY
Tanto DISTINCT quanto GROUP BY podem ser usados para retornar valores únicos, mas têm diferenças importantes:
DISTINCT: Foca em eliminar duplicatas dos resultados, retornando apenas valores únicos.
SELECT DISTINCT produto
FROM vendas;
GROUP BY: Agrupa os resultados por colunas específicas, muitas vezes usado com funções agregadas como SUM, COUNT, AVG, etc.
SELECT produto, COUNT(*)
FROM vendas
GROUP BY produto;
Use DISTINCT quando o foco é apenas eliminar duplicatas, e GROUP BY quando você precisa de agrupamentos com análises agregadas.
5. Quando usar a cláusula DISTINCT
- Listar valores únicos: Quando você quer uma lista de valores sem duplicatas, como em uma lista de cidades, produtos ou categorias;
- Eliminar duplicatas indesejadas: Quando sua consulta está retornando resultados repetidos que você deseja remover;
- Verificar integridade dos dados: Quando precisa verificar se há entradas duplicadas em colunas que deveriam ser únicas.
6. Limitações da cláusula DISTINCT
- Performance: Em grandes conjuntos de dados, usar DISTINCT pode afetar a performance da consulta, pois o banco de dados precisa comparar todos os registros;
- Uso com Funções Agregadas: Para obter resultados agregados, o GROUP BY é mais recomendado, já que DISTINCT não realiza agregações.
A cláusula DISTINCT é uma solução prática para garantir que suas consultas retornem apenas valores únicos, eliminando duplicatas. Quando usada corretamente, ela pode ajudar a organizar e simplificar os resultados da sua consulta, proporcionando uma visão clara e precisa dos dado
Domine os principais comandos, Operadores, Manipulação de dados, Funções, Drop e Uploads, Query, SubQuerys, Views, Segurança e muito mais!
O acesso ao nosso curso é vitalício e com suporte exclusivo.
CLIQUE NA IMAGEM ABAIXO PARA MAIS DETALHES:
Dúvidas ou sugestões? Deixem nos comentários! Para mais dicas, acesse o nosso canal no YouTube:
https://youtube.com/criandobits
Quer receber GRÁTIS o e-book "Como Formatar um Computador em 5 Minutos"?
Sobre o Autor
0 Comentários