문과생의 우당탕탕 공부 기록

09. HAVING 절) HAVING절의 실행 순서는 어떻게될까? 본문

SQL 공부/조인과 집계 데이터

09. HAVING 절) HAVING절의 실행 순서는 어떻게될까?

드르렁쿨쿨 2023. 1. 15. 01:03

HAVING 절

-의미: GROUP BY 절과 함께 HAIVNG절을 사용하여 GROUP BY의 결과를 특정 조건으로 필터링 하는 기능을 한다. 

 

HAVING 절 문법

SELECT 

              COLUMN_1

            , 집계함수(COLUMN_2)

    FROM

               TABLE_NAME

GROUP BY  COLUMN_1

    HAVING 조건식;

 

<HAVING과 WHERE의 특징>

- HAVING 절은 GROUP BY 절에 의해 생성된 그룹행의 조건을 설정함

     - WHERE 절은 GROUP BY 절이 적용되기 전에 개별 행의 조건을 설정함

 

예시로 한번 살펴보자

 

HAVING절 실습 - GROUP BY 결과 출력

앞서 GROUP BY 실습 때 진행했던 쿼리이다.

AMOUNT_SUM  내림차순 순으로 결과값이 나왔다. 

 

HAVING절 실습 - GROUP BY 결과 출력 + HAVING 

해당 쿼리에서 GROUP BY밑에 HAVING 말그대로 어떤 조건을 갖고있는 값들만 뽑았다.

AMOUNT_SUM 이 200이상인것들만 뽑았다.

 

* HAVING절은 GROUP BY를 한 결과 중에서 -> 뽑을 정보만 뽑는 개념

 

비슷한 원리로 COUNT 연산자를 써서, 각 조건에 맞는 결과값을 뽑아낼 수 있다.

 

마지막으로 HAVING절의 실행 순서를 알아보자.

GROUP BY로 그룹핑을 한 다음에 그 그룹이 갖고(HAVING)있어야하는 조건을 HAVING절에 넣는것임!!

 

HAVING절 뿐만아니라 SQL문의 논리적 순서를 정리해놓은 게시글은 요기에

↓↓↓

 

https://beebee1203.tistory.com/16

Comments