Valores Distintos no SQL – DISTINCT e DISTINCT COUNT
Aprenda a trabalhar com valores distintos no SQL, verificando quantas informações únicas você tem em uma base de dados!
No SQL, o DISTINCT elimina as repetições de uma consulta: SELECT DISTINCT coluna FROM tabela lista cada valor uma única vez. Para contar quantos valores únicos existem, use SELECT COUNT(DISTINCT coluna) FROM tabela. E, para saber quantos registros existem dentro de cada valor, o caminho é o GROUP BY com COUNT.
Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo ou acesse o nosso canal do YouTube!
Resumo do vídeo: a aula mostra, direto no banco de dados, como descobrir as informações únicas de uma coluna. Primeiro com o SELECT DISTINCT, para listar cada valor uma só vez; depois com o COUNT(DISTINCT), para contar quantos valores diferentes existem; e, por fim, com o GROUP BY, para contar quantos registros há dentro de cada valor.
Neste vídeo você aprende:
- como o SELECT DISTINCT lista os valores únicos de uma coluna (como os níveis de escolaridade de uma tabela de clientes);
- como usar o COUNT junto do DISTINCT para contar quantas marcas diferentes existem na base;
- por que a verificação manual é inviável em tabelas com milhares de linhas;
- quando trocar o DISTINCT pelo GROUP BY para ter a contagem de registros por valor.
Valores Distintos no SQL – DISTINCT e DISTINCT COUNT
Na aula de hoje, você verá como verificar quantas informações únicas existem em uma base de dados para análise. Através do DISTINCT e do DISTINCT COUNT, você aprenderá a trabalhar com valores distintos no SQL.
Vou te mostrar como usar os comandos DISTINCT no SQL e o DISTINCT COUNT no SQL para te auxiliar na hora de verificar as informações distintas em uma coluna e garantir que não haverá nenhum erro, especialmente ao trabalhar com bases de dados muito grandes.
O comando DISTINCT é usado para descobrir quais são as informações únicas de uma coluna, e o DISTINCT COUNT para contar quantas informações únicas temos. Com esses dois comandos, você não precisará fazer verificações manuais, o que seria inviável.
Trabalhando com Valores Distintos no SQL – DISTINCT no SQL
Para exemplificar como trabalhar com valores distintos no SQL, usarei duas tabelas do meu banco de dados, mas você pode replicar isso nas tabelas e no banco de dados que você estiver usando.
Primeiramente, vamos selecionar e visualizar todos os dados da tabela clientes pelo comando:
SELECT * FROM clientes;
Nessa tabela, temos algumas informações com os dados dos clientes. Repare que algumas colunas, como Escolaridade, possuem informações que se repetem.
Ou seja, para descobrir de forma única quais são os níveis de escolaridade possíveis, eu teria de examinar linha por linha da tabela, o que seria muito trabalhoso e inviável.
Para esses casos, podemos utilizar o comando DISTINCT no SQL, que nos retornará apenas os valores distintos dentro de uma coluna, ou seja, teremos todos os níveis de escolaridade possíveis listados uma única vez. Para isso, podemos fazer da seguinte forma:
SELECT DISTINCT Escolaridade FROM clientes;Esse código seleciona (SELECT) os valores distintos (DISTINCT) da coluna Escolaridade da tabela de clientes.

Repare que ele nos retornou a coluna Escolaridade, com todos os valores possíveis aparecendo apenas uma única vez.
Vamos ver um segundo exemplo a partir da tabela produtos. Selecione e visualize todos os dados da tabela produtos usando o seguinte código.
SELECT * FROM produtos;
A partir dessa tabela, vamos separar os valores distintos da coluna Marca_Produto. Embora essa tabela seja pequena e isso pudesse ser feito manualmente, ela poderia ter milhares de linhas. Para lidarmos com isso de forma prática, podemos executar o seguinte código:
SELECT DISTINCT Marca_Produto FROM produtos;
Vale lembrar que o DISTINCT também funciona com mais de uma coluna. Em uma consulta como SELECT DISTINCT coluna1, coluna2 FROM tabela, o resultado traz cada combinação única entre as duas colunas, e não os valores únicos de cada uma separadamente.
Contando Valores Únicos no SQL – DISTINCT COUNT no SQL
Seguindo com nosso último exemplo das marcas, vamos supor que, ao invés de querer saber quais são as marcas distintas de produtos que a empresa trabalha, quiséssemos descobrir a quantidade de marcas presentes.
Novamente, em um exemplo pequeno, poderíamos fazer isso manualmente, mas em uma tabela maior, isso seria muito mais trabalhoso. Para isso, podemos usar junto ao DISTINCT o comando COUNT.
SELECT COUNT(DISTINCT Marca_Produto) FROM produtos;O COUNT associado ao DISTINCT retornará a contagem de marcas únicas presentes na coluna Marca_Produto da tabela produtos.

Assim, conseguimos descobrir que dentro desse banco de dados temos o total de 8 marcas registradas.
Contagem Específica para Cada Produto – GROUP BY no SQL
Existe um terceiro cenário que podemos abordar, que consiste em contar quantos valores existem para cada uma das marcas. Em vez de determinar apenas o número de marcas únicas, podemos calcular quantos produtos existem dentro de cada uma dessas marcas.
Para realizar essa tarefa, não utilizamos o comando DISTINCT, mas sim o comando GROUP BY no SQL.
SELECT
Marca_Produto,
COUNT(Marca_Produto)
FROM produtos
GROUP BY Marca_Produto;O GROUP BY agrupa os resultados com base na coluna Marca_Produto e, em seguida, utiliza o COUNT para contar quantos registros existem para cada valor distinto dessa coluna.

O resultado final será uma tabela que lista cada marca única da tabela produtos juntamente com a contagem de produtos para essa marca específica.
Perguntas frequentes sobre valores distintos no SQL
1. Para que serve o DISTINCT no SQL?
Serve para eliminar as repetições de uma consulta. O comando SELECT DISTINCT coluna FROM tabela devolve cada valor daquela coluna uma única vez, o que é útil para descobrir todos os valores possíveis de um campo.
2. Como contar valores distintos no SQL?
Use o COUNT junto do DISTINCT. A consulta SELECT COUNT(DISTINCT coluna) FROM tabela devolve quantos valores diferentes existem naquela coluna, sem precisar conferir linha por linha.
3. Qual a diferença entre DISTINCT e GROUP BY?
O DISTINCT apenas remove as repetições do resultado. O GROUP BY agrupa as linhas por valor e permite aplicar funções de agregação, como contar quantos registros existem dentro de cada grupo com o COUNT.
4. O DISTINCT funciona com mais de uma coluna?
Sim. Ao listar duas ou mais colunas depois do DISTINCT, o SQL considera a combinação entre elas: o resultado traz cada combinação única, e não os valores únicos de cada coluna separadamente.
5. O COUNT(DISTINCT) conta valores nulos?
Não. O COUNT(DISTINCT coluna) ignora os valores nulos na contagem. Já o SELECT DISTINCT exibe o nulo como um dos valores possíveis daquela coluna.
Conclusão – Valores Distintos no SQL – DISTINCT e DISTINCT COUNT
Na aula de hoje eu te mostrei como verificar as informações únicas dentro de uma coluna em uma base de dados para fazer análise.
Através dos comandos DISTINCT e DISTINCT COUNT, você aprendeu como trabalhar com valores distintos no SQL, descobrindo quais são as informações únicas dentro de uma tabela e quantas são essas informações.
Para concluir, ainda te ensinei como fazer para utilizar o GROUP BY para fazer a contagem distinta específica para cada informação dentro do seu banco de dados.
Se você deseja aprender mais e dominar outros comandos avançados, considere fazer um curso de SQL. Ele pode te ajudar a consolidar ainda mais o conhecimento adquirido e a aplicar essas técnicas com confiança no dia a dia.
Hashtag Treinamentos
Para acessar outras publicações de SQL, clique aqui!


