Oracle SQL 기본 구문(GROUP BY)

GROUP BY 문은 데이터베이스에서 검색된 결과를 그룹화하는 데 사용됩니다.

데이터를 그룹화하고 각 그룹에 통계 기능을 적용할 수 있습니다.

이때 사용하는 함수는 SUM, MAX, MIN, AVG, COUNT가 있다.

예제를 통해 각 기능을 자세히 살펴보겠습니다.

먼저 EMP 테이블에서 DEPTNO로 그룹화하고 각 그룹의 SAL을 합산하는 예를 살펴보자.

SELECT DEPTNO, SUM(SAL)
FROM EMP
GROUP BY DEPTNO;


DEPTNO의 EMP 그룹에서 DEPTNO, SUM(SAL)을 선택합니다. // 결과 출력

위 질의문에서 GROUP BY DEPTNO 문은 DEPTNO로 그룹화하는 것을 의미한다.

SELECT 문에서 DEPTNO 및 SUM(SAL)을 선택했습니다.

즉, 각 그룹에 대한 DEPTNO 및 SAL의 합계를 인쇄하려고 합니다.

다음 예는 EMP 테이블에서 DEPTNO별로 그룹화하여 부서별 급여의 최대, 최소, 평균 및 개수(직원 수)를 검색합니다.

SUM : 그룹 내 값의 합을 계산합니다.
MAX : 그룹에서 가장 큰 값을 반환합니다.
MIN : 그룹에서 가장 작은 값을 반환합니다.
AVG: 그룹 내 값의 평균을 계산합니다.
COUNT : 그룹 내의 행 수를 반환합니다.

SELECT DEPTNO, MAX(SAL), MIN(SAL), AVG(SAL), COUNT(*)
FROM EMP
GROUP BY DEPTNO;


DEPTNO, MAX(SAL), MIN(SAL), AVG(SAL), 개수 선택

DEPTNO의 EMP 그룹에서; // 결과 출력