where , having 특징
2023. 4. 19. 14:38ㆍDatabase
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;
'Database' 카테고리의 다른 글
upsert query에서 발생한 문제점 (0) | 2023.04.19 |
---|---|
Mysql now(), curdate() 차이 (2) | 2023.04.19 |