SQL 쿼리에 HAVING 절이 있는 경우 SLEECT 절에 집계 함수(Aggregated Function)가 포함되어야 합니다.
참(True)일까요? 거짓(False)일까요?
SQL에서 HAVING 절을 사용하는 경우 일반적으로 집계가 수행된 후에 적용되며 집계 함수(예: COUNT(), SUM(), AVG() 등)를 기반으로 GROUP BY 작업의 결과를 필터링하는 데 사용됩니다.
SELECT department, COUNT(employee_id)
FROM employees
GROUP BY department
HAVING COUNT(employee_id) > 5;
따라서 집계 함수의 결과를 필터링하기 위해 HAVING 절을 사용하는 경우 해당 집계 함수도 SELECT 절에 포함되어야 합니다.
단, 예외가 있습니다. 최종 출력에 표시할 필요가 없는 집계 값을 기준으로 필터링할 때는 SELECT 절에 집계 함수를 포함하지 않고 HAVING 절을 사용할 수 있습니다.
SELECT department
FROM employees
GROUP BY department
HAVING COUNT(employee_id) > 5;
따라서 SELECT 절과 HAVING 절 모두에 집계 함수를 포함하는 것이 일반적이지만, 집계 결과를 표시하지 않고 집계 결과만 기준으로 필터링해야 하는 경우에는 반드시 필요한 것은 아닙니다.