[SQL] 특정 조건을 만족하는 물고기별 수와 최대 길이 구하기

NoHae·2025년 10월 31일

SQL

목록 보기
85/86

문제 출처

코딩테스트 연습 > GROUP BY > 특정 조건을 만족하는 물고기별 수와 최대 길이 구하기
https://school.programmers.co.kr/learn/courses/30/lessons/298519

문제 설명

접근 방법

fish_type으로 group by 한 뒤, avg(length) >= 33 인 having 조건을 건다.
이 후, 물고기 수, 각각 fish_type 중 가장 큰 길이, fish_type을 select 해온다.

select count(*) as FISH_COUNT, max(length) as MAX_LENGTH, FISH_TYPE
from fish_info
group by fish_type
having avg(ifnull(length, 10)) >= 33
order by fish_type asc

알게된 점

처음 풀 때 null인 경우 10cm로 가정하고 계산하는 부분을 놓쳤다.
이는 ifnull (mysql 기준)을 통해 null 인 경우 10으로 설정하여 계산하면 된다.

문제푼 흔적

profile
노력 해보려고 하는 사람(00년생 소프트웨어융합학과, 24년 12월 부터 백엔드 및 코테 공부 시작)

0개의 댓글