-
SQL(HAVING 절)SQL 2023. 4. 18. 21:41
◆ HAVING문을 사용하여 그룹핑된 데이터에서 원하는 조건으로 추출 가능
- 실행순서: from -> where -> group by -> having -> select
※ 문법적으로는 group by와 having의 순서를 바꿔도 에러 없이 수행 되지만 논리적으로 순서 지키는 것 권고
◆ PRACTICE
1) EMP테이블에서 직업 별로 최고 급여액, 최저 급여액, 총 급여액, 평균 급여액을 구하고, 최종적으로 총급여액이 6000 이상인 데이터만 출력하는 질의 작성
SELECT JOB , MAX(SAL) AS SAL_MAX , MIN(SAL) AS SAL_MIN , SUM(SAL) AS SAL_TOTAL , ROUND(AVG(SAL)) AS SAL_AVG FROM EMP GROUP BY JOB HAVING MAX(SAL) >= 6000;
2) EMP테이블에서 부서별로 사원수, 직업수, 총급여, 평균급여를 4명이상인 부서만 출력하시오
SELECT DEPTNO , COUNT(*) AS DEPT_EMP_CNT , COUNT(DISTINCT(JOB)) AS JOB_CNT , SUM(SAL) AS TOT_SAL , ROUND(AVG(SAL), 2) AS AVG_SAL FROM EMP GROUP BY DEPTNO HAVING COUNT(*) >= 4
'SQL' 카테고리의 다른 글
SQL(ORDER BY) (0) 2023.04.18 SQL(GROUP BY) (0) 2023.04.18 다중행 함수(집계함수 Aggregate Function) (0) 2023.04.18 SQL 함수(CASE 문) (0) 2023.04.13 SQL 함수(명시적 유형변환 함수) (0) 2023.04.12