[SQL] 21. COUNT 이외의 집계함수

uuuu.jini·2023년 1월 29일
0

SQL 첫걸음

목록 보기
21/36
post-thumbnail

SUM 집계함수를 이용해 집합의 함ㅂ계치를 구할 수 있다.

SUM([ALL|DISTINCT] 집합)
AVG([ALL|DISTINCT] 집합)
MIN([ALL|DISTINCT] 집합)
MAX(([ALL|DISTINCT] 집합)

1. SUM으로 합계 구하기


SUM 집계함수를 사용해 집합의 합계를 구할 수 있다. 인수로 집합을 지정하면 해당 집합의 전체 합을 계산해 반환한다.

  • SUM으로 quantity열의 합계 구하기
  • SELECT SUM(quantity) FROM sample51;

인수로 지정되는 집합은 수치형 뿐이다. 문자열형이나 날짜시간형은 불가하다.
NULL 값이 있는 경우 이를 제거한 뒤에 합계를 낸다.

2. AVG로 평균 내기


AVG 함수 = SUM / COUNT

인자로 주어진 집합의 평균값을 계산해 반환한다. 수치형만 가능하다.

  • AVG로 평균값 구하기
  • SELECT AVG(quantity), SUM(quantity)/COUNT(quantity) FROM sample51;

NULL 값을 제거한 뒤에 평균값을 계산한다.

  • NULL을 0으로 간주해서 평균을 내고 싶다면 CASE를 사용해 NULL을 0으로 변환한 뒤에 AVG 함수로 계산하면 된다.
  • SELECT AVG(CASE WHEN quantity IS NULL THEN 0 ELSE quantity END) AS avgnull0 FROM sample51;

3. MIN,MAX로 최솟값, 최댓값 구하기


MIN 집계함수, MAX 집계함수를 사용해 집합에서 최솟값과 최댓값을 구할 수 있다. 이들 함수는 문자열형과 날짜시간형에서도 사용할 수 있다. NULL 무시는 다른 함수와 동일하다.

SELECT MIN(quantity), MAX(quantity), MIN(name), MAX(name) FROM sample51;

profile
멋쟁이 토마토

0개의 댓글