본문 바로가기

Oracle/Oracle Programming

[Oracle] HAVING 절

반응형

■ HAVING 절

 -. WHERE절이 SELECT문에서 조건 검색을 위해서 사용한다면

    HAVING절은 GROUP BY 절에 의해 생성된 결과 값 중 원하는 조건에 부합하는 자료만 보고자 할 때 사용한다.

 

 부서별로 평균을 구하되 나온 결과 값중에서 그 평균값이 2000 이상인 자료만 산출하는 예

SQL> SELECT deptno, AVG(sal)

          FROM emp

          GROUP BY deptno

          HAVING AVG(sal) >= 2000;


 HAVING 절을 WHERE 절과 함께 사용하는 예제

 -. 테이블에서 100 이상의 급여를 가지고 있는 사람들에 대해서만 부서별로 평균을 구한 후

    구해진 부서별 평균 급여가 2000 이상인 부서 번호와 부서별 평균 급여를 출력한다.

SQL> SELECT deptno, AVG(sal)

FROM emp

WHERE sal >= 1000

GROUP BY deptno

HAVING AVG(sal) >= 2000;


* WHERE 절에서 조건에 사용되는 컬럼은 단순 컬럼

* WHERE 절은 테이블에서 데이터를 가져올 때 그 테이블에서 특정 조건에 부합하는 자료만 검검색하고 할 때 사용

* HAVING 저에서는 그룹함수를 적용한 컬럼

* HAVING 절은 그룹함수 사용 시 그룹함수를 적용해서 나온 결과 값중에서 원하는 조건에 부합하는 자료만 산출하고 싶을 때 사용한다.


반응형