728x90
GROUP BY 절
그룹별 건수나 합계를 얻을 수 있다.
HAVING 절
그룹별 집계 결과 중 원하는 결과만 필터링하기 위해 필터 조건을 줄 수 있다.
HAVING 절 vs WHERE 절
HAVING 절
GROUP BY 절과 함께 사용해야 함.
SELECT ANIMAL_TYPE, COUNT(*) CNT FROM ANIMAL_INS GROUP BY ANIMAL_TYPE;실행 결과
SELECT ANIMAL_TYPE, COUNT(*) CNT FROM ANIMAL_INS GROUP BY ANIMAL_TYPE HAVING COUNT(*) > 50;실행 결과
GROUP BY 컬럼만 조건절에 사용할 수 있다.
(GROUP BY에 사용되지 않은 컬럼을 조건으로 사용하면 오류 발생!)
SELECT ANIMAL_TYPE, COUNT(*) CNT FROM ANIMAL_INS WHERE COUNT(*) > 50 GROUP BY ANIMAL_TYPE;실행 결과
집계 함수(COUNT, SUM, AVG, MAX, MIN)를 사용하여 조건절을 작성
- 집계함수를 서로 비교할 수 있다.
집계함수 없이 조건으로 사용 가능
AND, OR을 사용하여 여러 조건을 동시에 부여할 수 있다.
728x90