SQL:GroupBy
집계 함수 (Aggregate Function)
COUNT (카운트)
SUM (합계)
AVG (평균)
MIN (최소)
MAX (최대)
집계 함수 없이 사용
집계 함수 없이 GROUP BY를 사용하면, 단순히 고유한 조합별로 데이터를 그룹화한 결과를 반환합니다. 예를 들어:
이 경우, department와 job_title의 고유한 조합만 반환합니다. 이는 데이터를 요약하지 않고 중복을 제거하고자 할 때 유용합니다.
규칙
SELECT 절에 명시된 컬럼은 모두 GROUP BY에 포함되거나 집계 함수로 처리되어야 합니다. 그렇지 않으면 SQL 구문 오류가 발생합니다.
예를 들어, 다음은 오류를 발생시킵니다:
오류 이유: salary가 GROUP BY에도 없고 집계 함수로 처리되지 않았기 때문입니다.
올바른 예제:
SELECT department, job_title, MAX(salary) AS max_salary
FROM employees
GROUP BY department, job_title;
결론:
- 집계 함수 없이도 GROUP BY를 사용할 수 있지만, 보통은 데이터를 요약하거나 집계하기 위해 사용됩니다.
- SELECT 절에 나오는 컬럼은 반드시 GROUP BY에 포함되거나 집계 함수로 처리되어야 합니다.