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

APRENDA BANCO DE DADOS SQL DO BÁSICO AO AVANÇADO!

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:

linux dicas e truques

CLIQUE AQUI E SAIBA MAIS

Dúvidas ou sugestões? Deixem nos comentários! Para mais dicas, acesse o nosso canal no YouTube:
https://youtube.com/criandobits

Tags:

Quer receber GRÁTIS o e-book "Como Formatar um Computador em 5 Minutos"?

Não enviamos spam. Seu e-mail está 100% seguro!

Sobre o Autor

Bene Silva Júnior
Bene Silva Júnior

Bacharel em Sistemas de Informação pelo Instituto Paulista de Pesquisa e Ensino IPEP. Apaixonado por tecnologias e games do tempo da vovó!

0 Comentários

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *