Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] duvida sobre função do distinct, e duvida sobre a diferença de distinct e group by

Olá pessoal, somente para confirmar, o objetivo do distinct é eliminar linhas iguais na consulta? é como se o SQL pegasse somente uma das linhas que se repetem e mostrasse só ela?

Outro ponto, sei que não chegamos no group by ainda no curso, mas poderiam me explicar a diferença entre eles, group by e distinct? é como se o distinct eliminasse linhas iguais para consulta, e o group by agrupasse todas as linhas iguais e mostrasse só uma afim de aplicar uma função metrica (como sum, avg,max, min e count)??

1 resposta
solução!

Oi, Beatriz! Tudo bom?

Você está certíssima! :)

O objetivo do comando DISTINCT é retornar apenas linhas com valores diferentes em uma consulta. Ele é usado, por exemplo, para eliminar duplicatas (dados repetidos).

Enquanto isso, o comando GROUP BY é usado para agrupar linhas com base em uma ou mais colunas e aplicar funções de agregação, como SUM, AVG, MAX, MIN e COUNT, aos grupos resultantes. Com isso, podemos extrair algumas informações interessantes das nossas tabelas, como a quantidade de vezes que determinados valores aparecem.

Vale enfatizar que nem sempre a consulta com GROUP BY mostrará apenas uma linha. Dependendo da quantia de valores distintos, é possível que mais linhas apareçam em nossa query, Bia. Uma forma de visualizar essa situação é pensar em uma livraria: se quiséssemos contar quantos livros há de cada gênero literário, poderíamos usar o GROUP BY juntamente com a função COUNT; neste caso, o nosso retorno seria uma tabela com várias linhas, cada uma representando um gênero e quantas vezes ele aparecerá entre os livros!

Espero ter ajudado, Bia! Se outras dúvidas surgirem, pode contar comigo.

Um forte abraço!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software