Fazer um select com distinct seria o meso de agrupar todas as colunas da tabela?
Fazer um select com distinct seria o meso de agrupar todas as colunas da tabela?
Oi João,
Na verdade não.
O distinct
é apenas para evitar elementos repetidos na consulta.
Ex: select distinct(nome) from alunos;
Se tiver 30 registros de aluno com o nome Rodrigo, a consulta vai exibir apenas um. O resultado seria algo como:
Rodrigo
Ana
Pedro
Já o group by
deve ser utilizado quando se quer fazer uma consulta onde determinados resultados serão agrupados para algum cálculo(sum, min, max, avg, count, etc.).
Ex: select nome, count(nome) from alunos group by nome;
Nesse caso a consulta vai agrupar os registros pelo nome, para fazer um count de cada "grupo". O resultado seria algo como:
Rodrigo - 30
Ana - 10
Pedro - 1
Faz sentido ?
Bons estudos!