본문 바로가기

인프런/[백문이불여일타] 데이터 분석을 위한 중급 SQL

COUNT / SUM / AVG / MIN / MAX / GROUP BY

COUNT / SUM / AVG / MIN / MAX / GROUP BY

 

 

 

COUNT

 

  • 행의 개수를 구할 때 사용
    • NULL 값 제외
  • COUNT(*) : 모든 행의 개수
    • NULL 값 포함

 

 

SUM

 

  • 합계를 구할 때 사용

 

 

AVG

 

  • 평균을 구할 때 사용
    • NULL 값 제외
    • NULL 값 포함 : SUM / COUNT(*) 방식 사용

 

 

MIN

 

  • 최솟값을 구할 때 사용

 

 

MAX

 

  • 최댓값을 구할 때 사용

 

 

GROUP BY

 

  • 특정 컬럼을 기준으로 그룹화할 싶을 때 사용
    • GROUP BY문에 사용한 컬럼을 SELECT문에도 작성하는 것이 좋음
  • 주로 집계 함수(COUNT, SUM, AVG 등)와 함께 사용

 

HAVING

  • 그룹화된 결과에 조건을 적용할 때 사용
    • WHERE : 그룹화 이전 조건
    • HAVING : 그룹화 이후 조건

 


HackerRank

 

 

Revising Aggregations - Averages

 

SELECT AVG(population)
FROM city
WHERE district = 'California';

 

 

Revising Aggregations - The Sum Function

 

SELECT SUM(population)
FROM city
WHERE district = 'California';

 

 

Revising Aggregations - The Count Function

 

SELECT COUNT(*)
FROM city
WHERE population > 100000;

 

 

Average Population

 

SELECT FLOOR(AVG(population))
FROM city;

 

 

Population Density Difference

 

SELECT MAX(population) - MIN(population)
FROM city;

 

 

 

Weather Observation Station 4

 

SELECT COUNT(city) - COUNT(DISTINCT city)
FROM station;

 

 

Top Earners

 

SELECT salary * months AS earnings
     , COUNT(*)
FROM employee
GROUP BY earnings
ORDER BY earnings DESC
LIMIT 1;

 

 

'인프런 > [백문이불여일타] 데이터 분석을 위한 중급 SQL' 카테고리의 다른 글

UNION  (0) 2025.08.30
JOIN  (1) 2025.08.29
CASE  (0) 2025.08.28