PostgreSQL/조인과 집계 데이터
PostgreSQL HAVING 절
DOGvelopers
2019. 11. 5. 22:05
반응형
실습테이블 만들기 https://dog-developers.tistory.com/140
HAVING 이란?
GROUP BY 절과 함께 HAVING절을 사용하여 GROUP BY의 결과를 특정 조건으로 필터링 하는 기능을 한다.
기본문법
WHERE 절과는 다른건 집계함수의 결과를 가지고 조건을 적용하여 조회합니다.
SELECT
COLUMN_1,
집계함수(COLUMN_2)
FROM
TABLE_NAME
GROUP BY COLUMN_1
HAVING 조건식;
실습
- PAYMENT 테이블을 CUSTOMER_ID 기준으로 GROUP BY 하고 SUM(AMOUNT) 가 200을 초과하는 값을 조회합니다.
SELECT
CUSTOMER_ID,
SUM(AMOUNT) AS AMOUNT_SUM
FROM
PAYMENT
GROUP BY
CUSTOMER_ID
HAVING
SUM(AMOUNT) > 200;
HAVING 절은 GROUP BY를 한 결과 중에서 조건을 대입합니다.
- CUSTOMER 테이블을 STORE_ID 기준으로 GROUP BY 하여 조회합니다.
SELECT
STORE_ID,
COUNT(CUSTOMER_ID) AS COUNT
FROM
CUSTOMER
GROUP BY
STORE_ID;
- CUSTOMER 테이블을 STORE_ID 기준으로 GROUP BY 하여 조회합니다. COUNT(CUSTOMER_ID)의 결과가 300을 초과하는 값을 조회 하세요.
SELECT
STORE_ID,
COUNT(CUSTOMER_ID) AS COUNT
FROM
CUSTOMER
GROUP BY
STORE_ID
having COUNT(CUSTOMER_ID) > 300;
반응형