Middle
Qual é a diferença entre WHERE e HAVING?
sobes.tech IA
Resposta da IA
No SQL, o operador WHERE é usado para filtrar linhas antes da agregação, ou seja, limita o conjunto de dados que participará na consulta.
HAVING é usado para filtrar dados já agrupados, ou seja, após a execução de funções de agregação e agrupamento.
Exemplo:
SELECT department, COUNT(*) as employee_count
FROM employees
WHERE salary > 50000 -- filtramos funcionários com salário superior a 50000
GROUP BY department
HAVING COUNT(*) > 10 -- selecionamos departamentos com mais de 10 funcionários
Aqui, primeiro o WHERE filtra as linhas com salário acima de 50000, depois os dados são agrupados por departamento, e o HAVING filtra os grupos pelo número de funcionários.