# 그룹함수
그룹 함수란 여러 행 또는 테이블 전체의 행에 대해 함수가 적용되어 하나의 결과값을 가져오는 함수를 말합니다..
GROUP BY절을 이용하여 그룹 당 하나의 결과가 주어지도록 그룹화 할 수 있습니다.
HAVING절을 사용하여 그룹 함수를 가지고 조건비교를 할 수 있습니다.
COUNT(*)를 제외한 모든 그룹함수는 NULL값을 고려하지 않습니다.
MIN, MAX 그룹함수는 모든 자료형에 대해서 사용 할 수 있습니다.
# 그룹함수 종류
COUNT : COUNT 함수는 검색된 행의 수를 반환합니다.
SQL>SELECT COUNT(deptno) FROM DEPT ;
COUNT(DEPTNO)
————-
4 ==> 검색된 행의 총 수 4개를 반환합니다. 즉 4개의 부서가 존재합니다.
MAX : MAX 함수는 컬럼중의 최대값을 반환합니다.
SQL>SELECT MAX(sal) salary FROM emp ;
SALARY
———-
5000 ==> sal컬럼중에서 제일 큰값을 반환합니다. 즉 가장 큰 급여를 반환합니다.
MIN : MIN 함수는 컬럼중의 최소값을 반환합니다.
SQL>SELECT MIN(sal) salary FROM emp ;
SALARY
———-
800 ==> sal컬럼중에서 가장 작은 값 반환합니다. 즉 가장 적은 급여를 반환합니다
AVG : AVG 함수는 평균값을 반환합니다.
SQL>SELECT ROUND(AVG(sal),1) salary FROM emp WHERE deptno = 30
SALARY
———-
1566.7 ==> 30부서 사원의 평균 급여를 소수점 1자리 이하에서 반올림해서 보여줍니다.
SUM : SUM 함수는 검색된 컬럼의 합을 반환합니다.
SQL>SELECT SUM(sal) salary FROM emp WHERE deptno = 30;
SALARY
———-
9400 ==> 30부서 사원의 급여 합계를 보여줍니다.
STDDEV : STDDEV 함수는 표준편차를 반환합니다.
SQL> SELECT ROUND(STDDEV(sal),3) salary FROM emp WHERE deptno = 30 ;
SALARY
———-
668.331 ==> 30부서 사원의 급여 표준편차를 반환합니다.