부서별 사원 수와 전체 부서의 총 사원 수 구하기

    마지막으로 현재 부서별 사원 수와 전체 부서의 총 사원 수를 구해 봅시다. 부서별 사원 정보는 dept_emp 테이블에 있습니다. 먼저 부서별로 몇 명의 사원이 있는지 구하고, 마지막에 전체 사원 수를 집계하면 됩니다. 일반적으로 소계와 총계를 구할 때는 GROUP BY 절에 WITH ROLLUP을 명시하는데, 여기서는 WITH ROLLUP 구문을 사용하지 않고 쿼리를 작성해 보겠습니다.

    코드 8-29

    SELECT a.dept_name, COUNT(*)
      FROM departments a
     INNER JOIN dept_emp b
        ON a.dept_no = b.dept_no
     WHERE SYSDATE() BETWEEN b.from_date AND b.to_date
     GROUP BY a.dept_name
     UNION
    SELECT '전체', COUNT(*)
      FROM dept_emp
     WHERE SYSDATE() BETWEEN from_date AND to_date;

    실행결과

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.