Learning Hub Logo
SQL
  • Introdução ao SQL
  • Sintaxe SQL
  • SQL SELECT
  • SQL WHERE
  • SQL AND
  • SQL OR
  • SQL NOT
  • SQL ORDER BY
  • SQL INSERT INTO
  • SQL Valores NULL
  • SQL UPDATE
  • SQL DELETE
  • SQL LIMIT
  • SQL LIKE
  • SQL BETWEEN
  • SQL Aliases
  • SQL Funções de Agregação
  • SQL COUNT
  • SQL SUM
  • SQL AVG
  • SQL MIN e MAX
  • SQL GROUP BY
  • SQL HAVING
  • SQL Joins
  • SQL INNER JOIN
  • SQL LEFT JOIN
  • SQL RIGHT JOIN
  • SQL FULL OUTER JOIN
  • SQL Self Join
  • SQL UNION
  • Relacionamentos entre tabelas
  • SQL CREATE TABLE
  • SQL Constraints
  • SQL NOT NULL
  • SQL UNIQUE
  • SQL PRIMARY KEY
  • SQL FOREIGN KEY
  • SQL DEFAULT
  • SQL ALTER TABLE
  • SQL DROP TABLE
  • SQL Indexes
  • SQL Subconsultas
  • SQL Funções de String
  • SQL Funções de Data
  • SQL CASE WHEN
  • SQL Operadores e Funções Numéricas

Sobre Diego Pinho

Professor especialista em tecnologia com mais de 10 anos de experiência. Autor de livros técnicos e criador de cursos que já impactaram milhares de estudantes.

Visite meu site principal →

Serviços

  • Área do Aluno
  • Solicite um orçamento
  • Trabalhe Conosco

Redes Sociais

  • Youtube
  • TikTok
  • Instagram
  • LinkedIn

Links

  • Site Institucional
  • Nosso Blog
  • Cursos Online
  • Livros Publicados

Professor Diego Pinho

Educação, Tecnologia e IA © 2026

SQL›SQL HAVING

SQL HAVING

Como filtrar grupos após a agregação com a cláusula HAVING

⚡1 min de leitura

SQL HAVING

O HAVING filtra grupos criados pelo GROUP BY. Ele funciona como um WHERE, mas é avaliado depois da agregação, o que significa que pode usar funções como COUNT, SUM, AVG, etc.

Por que não usar WHERE?

O WHERE é avaliado antes do agrupamento, então não pode referenciar funções agregadoras:

Carregando...

Use HAVING para filtrar após o agrupamento:

Carregando...

Sintaxe

Carregando...

Exemplo

Categorias com preço médio acima de 300:

Carregando...
categoria    | preco_medio
-------------+------------
Eletrônicos  | 1263.27
Móveis       | 635.00

WHERE e HAVING juntos

Os dois podem aparecer na mesma query, cada um no seu momento:

Carregando...

WHERE vs HAVING: resumo

CláusulaQuando agePode usar funções agregadoras?
WHEREAntes do GROUP BYNão
HAVINGDepois do GROUP BYSim
← AnteriorSQL GROUP BYPróximo →SQL Joins