Database
where , having 특징
역발산기개세
2023. 4. 19. 14:38
where
- 집계 함수(group)가 적용되기 이전에 해당하는 레코드들을 선택합니다.
having
- 그룹화된 결과에 대한 필터링을 수행합니다. group by와 무조건 같이 써야합니다. 즉 그룹화 된 결과에 대해서만 조건문이 적용 가능합니다.
[예시]
// 올바른 sql
SELECT department, AVG(salary) AS avg_salary
FROM employees
GROUP BY department
HAVING AVG(salary) >= 55000
ORDER BY avg_salary DESC;
// 잘못된 sql
SELECT department, AVG(salary) AS avg_salary
FROM employees
where AVG(salary) >= 55000
GROUP BY department
ORDER BY avg_salary DESC;