GROUP BY, HAVING, 집합연산자

2021. 11. 2. 09:31Oracle

반응형
[GROUP BY]
-- 여러개의 값들을 하나의 그룹으로 묶어 처리
SELECT DEPT_CODE, COUNT(*)
  FROM EMPLOYEE
 GROUP BY DEPT_CODE;
-- 각 부서별 사원 수 조회


[HAVING]
-- 그룹에 대한 조건식
SELECT DEPT_CODE, SUM(SALARY)
  FROM EMPLOYEE
 GROUP 
    BY DEPT_CODE
HAVING SUM(SALARY) >= 50000000;
-- 부서별 합계급여가 5000만원 이상인 부서와 합계급여 조회


[집계 함수]
-- 그룹별 산출된 결과 값에 중간집계 계산
-- GROUP BY절에 기술
-- ROLLUP, CUBE


[집합 연산자]
-- 여러개의 쿼리문을 하나의 쿼리문으로 만드는 연산자  
-- UNION     : OR | 합집합 (두 쿼리문 수행한 모든 결과값 BUT 중복된 결과값은 한번만)
-- INTERSECT : AND | 교집합 (두 쿼리문의 중복된 결과값)
-- UNION ALL : 합집합 + 교집합 (UNION과 다르게 중복되는 결과값도 중복되는 만큼)
-- MINUS     : 차집합 (선행 결과값에서 후행 결과값을 뺀 나머지)

-- 유의) 각 쿼리문의 SELECT절에 작성되어있는 컬럼 갯수, 동일한 타입이여야 함
반응형

'Oracle' 카테고리의 다른 글

SUBQUERY  (0) 2021.11.08
JOIN  (0) 2021.11.03
DML SELECT  (0) 2021.10.28
오라클 SQL 계정 생성 및 권한 부여  (0) 2021.10.20