41. HAVING
Escrito por Uianes Luiz Rockenbach Biondo.
Última atualização em 04 out. 2023
Última atualização em 04 out. 2023
A cláusula HAVING pois adicionada ao MySQL para condições que envolvam funções numéricas, como COUNT(), MAX(), MIN(), SUM() e AVG(). A cláusula WHERE não pode ser usada em conjunto com essas funções. Sintaxe:
SELECT coluna1, coluna2, ...
FROM nomeTabela
WHERE condição
GROUP BY nomeColuna
HAVING condição
ORDER BY nomeColuna;
Exemplo
Para mostrar somente as cidades com mais do que dois alunos cadastrados:
Tabela Alunos
id_aluno | nome_aluno | cidade_aluno |
1 | Uianes | Santo Augusto |
2 | Maria | Três Passos |
3 | José | Santo Augusto |
4 | Antônio | Santo Augusto |
5 | João | Tenente Portela |
SELECT cidade_aluno, COUNT(cidade_aluno) AS "Quantidade de alunos por cidade"
FROM Alunos
GROUP BY cidade_aluno
HAVING COUNT(cidade_aluno) > 2;
Resultado:
cidade_aluno | Quantidade de alunos por cidade |
Santo Augusto | 3 |