# 그룹함수


그룹 함수란 여러 행 또는 테이블 전체의 행에 대해 함수가 적용되어 하나의 결과값을 가져오는  함수를 말합니다..
 
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부서 사원의 급여 표준편차를 반환합니다.


   

By haisins

오라클 DBA 박용석 입니다. haisins@gmail.com 으로 문의 주세요.

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다