오라클 GROUP BY, HAVING 절




GROUP BY절 사용법


GROUP는 특정 컬럼을 기준으로 집계를 내는데 사용된다.

일단 예를 들어 보도록 하겠습니다.

아래와 같이 학급 전체의 성적을 나타내는 테이블이 있습니다.

class는 반 명이며 name 학생 이름 score는 해당 학생의 성적 점수 입니다.




이제 이런 학급 전체 성적을 학급 별로 총합 집계를 내고 싶으면 group by를 이용합니다.


SELECT CLASS, SUM(SCORE) 

FROM TBL_REPORT_CARD 

GROUP BY CLASS;


그럼 다음과 같이 학급별로 점수 총합의 결과가 출력 됩니다.



Group by를 사용 하는 방법은 아래와 같습니다.



SELECT [GROUP BY 절에 지정된 컬럼1] [GROUP BY별로 집계할 값] 

FROM [테이블 명] 

GROUP BY [ 그룹으로 묶을 컬럼 값 ]




Having절 사용법


Having 절은 Group by로 집계된 값 중 where 절 처럼 특정 조건을 추가한다고 생각 하시면 됩니다.

예를 들어 학급별 총합 결과 중에 150점 이상인 것만 출력 하고 싶으면 다음과 같이 예제를 작성하면 됩니다.



SELECT CLASS, SUM(SCORE) 

FROM TBL_REPORT_CARD 

GROUP BY CLASS

HAVING SUM(SCORE) > 150 ;


결과 값은 아래와 같습니다.


Having 절을 사용 하는 방법은 아래와 같습니다.


SELECT [GROUP BY 절에 지정된 컬럼1] [GROUP BY별로 집계할 값] 

FROM [테이블 명] 

GROUP BY [ 그룹으로 묶을 컬럼 값 ]

HAVING [조건 추가] ;


이상으로 Group by와 Having 절에 대해 알아봤습니다.

도움이 되셨나요?

반응형

+ Recent posts