Day33 - 그룹함수

2021. 4. 1. 14:28Oracle 공부

이번에는 그룹함수에 대해서 알아 봅시다.

 

그룹함수

그룹 함수는 속성(column)별로 최대값(MAX), 최소값(MIN), 개수(COUNT) 등을 알고 싶을 때 사용하는 겁니다.

 

SUM (합계) , AVG(평균), MIN(최소값), MAX(최대값), COUNT(개수)

※ 평균은 소수자리가 많이 나오기 때문에, ROUND 함수를 같이 사용했다.

 

- COUNT 는 2가지 형태가 있습니다. (*) -> null 포함, (속성) -> null 비포함

 

- GROUP BY 절

GROUP BY는 속성을 그룹으로 묶습니다.

그룹함수를 사용하게 되면, 일반 속성(column)은 조회할 수가 없습니다.

일반 속성도 조회하고 싶다면, GROUP BY 로 묶어주어야 합니다.

 

※ 위는 job_id 별 급여평균 , 아래는 부서별 급여평균, 급여합계, 부서별 salary의 개수

※ 주의 : 그룹핑이 되지 않으면 그룹함수와 일반칼럼을 동시에 사용하지 못함

※ 주의 : group by절을 사용할 때 group절에 묶이지 않으면 다른 컬럼 조회를 할 수 없음

 

- 2개 이상의 GROUP BY 절

※ 2개 이상의 GROUP BY 절은 그룹핑 순서에 따라 값이 달라질 수 있음.

 

- WHERE절 에는 그룹함수를 사용할 수 없음.

- HAVING 이용.

- count(*) over() 그룹화 하지 않아도, 예외적으로 총 행의 수를 붙여서 조회하는 구문.

- over()를 사용하면 데이터가 많을 때, 조회 속도가 느려짐

 

이렇게 그룹함수에 대해서 알아 보았습니다.

 

고생하셨습니다.

'Oracle 공부' 카테고리의 다른 글

Day34 - JOIN  (0) 2021.04.02
Day33 - 테이블 생성, INNER JOIN  (0) 2021.04.01
Day33 - 집합연산자  (0) 2021.04.01
Day32 - 값 변환 함수  (0) 2021.04.01
Day32 - 형 변환 함수  (0) 2021.04.01