Having

  • Group By로 묶인 각 그룹들 중에 실제 가져올 그룹을 선택할 조건을 having 절에 작성한다.
  • Having은 Group By절의 조건이 된다.

ex)

-- 부서별 평균 급여가 2000이상인 급여 평균을 가져온다.
select avg(sal)
from emp
group by deptno
having avg(sal) >= 2000;

ex)

-- 부서별 최대 급여액이 3000이하인 부서의 급여 총합을 가져온다.
select sum(sal)
from emp
group by deptno
having max(sal) <= 3000;

ex)

-- 부서별 최소 급여액이 1000이하인 부서에서 직무가 CLERK인 사원들의 급여 총합을 구한다.
select sum(sal)
from emp
where job = 'CLERK'
group by deptno
having min(sal) <= 1000;

ex)

-- 각 부서의 급여 최소가 900이상 최대가 10000이하인 부서의 사원들 중 1500이상의
-- 급여를 받는 사원들의 평균 급여액을 가져온다.
select avg(sal)
from emp
where sal >= 1500
group by deptno
having min(sal) >= 900 and max(sal) <= 10000;

Comment and share

  • page 1 of 1

Hyeon Soo Ahn

author.bio


author.job