그룹 함수
- 테이블의 전체 행을 하나 이상의 칼럼을 기준으로 그룹화하여 그룹별로 결과를 출력하는 함수
그룹 함수의 종류

COUNT 함수
- 테이블에서 조건을 만족하는 행의 개수를 반환하는 함수
- ‘*’은 NULL을 포함한 모든 행의 개수, 칼럼은 NULL을 제외
- DISTINCT는 중복되는 값을 제외한 행의 개수
- ALL은 중복되는 값을 포함한 행의 개수, 기본값은 ALL
- expr 인수에서 사용 가능한 데이터 타입은 CHAR, VARCHAR2, NUMBER, DATE 타입
-- 중복을 제외한 job의 개수
SELECT COUNT(DISTINCT job)
FROM emp;
데이터 그룹 생성
- GROUP BY 절
- 특정 칼럼 값을 기준으로 테이블의 전체 행을 그룹별로 나누기 위한 절
- GROUP BY 절에 명시되지 않은 칼럼은 그룹함수와 함께 사용할 수 없음
- GROUP BY 절 사용할 때 적용되는 규칙
- 그룹핑 전에 WHERE 절을 사용하여 그룹 대상 집합을 먼저 선택
- GROUP BY 절에는 반드시 칼럼 이름을 포함해야 하며 칼럼 별명은 사용할 수 없음
- 그룹별 출력 순서는 오름차순으로 정렬
- SELECT 절에서 나열된 칼럼 이름이나 표현식은 GROUP BY 절에서 반드시 명시
- GROUP BY 절에서 명시한 칼럼 이름은 SELECT 절에서 명시하지 않아도 됨
단일 칼럼을 이용한 그룹핑
SELECT deptno, AVG(sal), COUNT(*), COUNT(comm)
FROM professor
GROUP BY deptno;