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

인스·2025년 6월 28일

문제

https://school.programmers.co.kr/learn/courses/30/lessons/298519

  • 처음 풀이
SELECT COUNT(*) AS FISH_COUNT, MAX(LENGTH) AS MAX_LENGTH, FISH_TYPE
FROM(
    SELECT ID, FISH_TYPE, IFNULL(LENGTH, 10) AS LENGTH
    FROM FISH_INFO
) AS SUB
GROUP BY FISH_TYPE
HAVING AVG(LENGTH) >= 33
ORDER BY FISH_TYPE ASC
  • 두번째 풀이
    - 생각해보니 MAX 안에 IFNULL 을 넣으면 된다..
SELECT COUNT(*) AS FISH_COUNT, MAX(IFNULL(LENGTH, 10)) AS MAX_LENGTH, FISH_TYPE
FROM FISH_INFO
GROUP BY FISH_TYPE
HAVING AVG(LENGTH) >= 33
ORDER BY FISH_TYPE ASC
profile
💻💡👻

0개의 댓글