본문 바로가기

프로그래밍 언어/SQL

[MySQL] 합계(SUM), 평균(AVG), 최솟값(MIN), 최댓값(MAX)

2023-04-10 TIL 21강 COUNT 이외의 집계함수

 

SUM : 합계 구하기

  • SUM 집계함수에 지정되는 집합은 수치형 뿐이다(문자열형, 날짜시간형은 불가)
  • NULL 값을 무시한다
SELECT SUM(quantity) FROM sample51;

 

 

AVG : 평균 구하기

  • AVG 집계함수에 지정되는 집합은 수치형 뿐이다(문자열형, 날짜시간형은 불가)
  • NULL 값을 무시한다
SELECT AVG(quantity), SUM(quantity)/COUNT(quantity) FROM sample51;

 

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

 

 

MIN, MAX: 최솟값, 최댓값 구하기

  • 수치형 뿐만 아니라 문자열형, 날짜시간형에도 사용할 수 있다
  • NULL 값을 무시한다
SELECT MIN(quantity), MAX(quantity), MIN(name), MAX(name) FROM sample51;

 

 

 

* CASE 참고: https://meilicoding.tistory.com/37

 

[MySQL] 데이터 변환(CASE,WHEN,THEN,ELSE,END), 검색/단순 CASE, 디코드/인코드

2023-03-14 TIL 15강 CASE 문으로 데이터 변환하기 검색 CASE : CASE WHEN 조건식 THEN 식 ... RDBMS에 갖추어져 있는 기존의 연산자나 함수만으로는 처리할 수 없는 것을 처리해줌 예를 들면, NULL값으로 연산한

meilicoding.tistory.com