Blog

Postado em em 20 de novembro de 2023

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!

Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo ou acesse o nosso canal do YouTube!

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;

Tabela 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.

DISTINCT da coluna Escolaridade

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;
Tabela 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;

Distinct da coluna Marca_Produto

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.

Count Distinct da coluna Marca_Produto

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.

GROUP BY da coluna Marca_Produto

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.

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.

Hashtag Treinamentos

Para acessar outras publicações de SQL, clique aqui!


Quer aprender mais sobre SQL com um minicurso básico gratuito?