개발로그필름

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

coding test/프로그래머스

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

yuullog 2025. 6. 27. 01:28
728x90
반응형
SMALL
반응형

 

 

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

 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

 

정답 쿼리
SELECT
  COUNT(*) AS FISH_COUNT,
  MAX(LENGTH) AS MAX_LENGTH,
  FISH_TYPE
FROM FISH_INFO
GROUP BY FISH_TYPE
HAVING AVG(IF(LENGTH IS NULL, 10, LENGTH)) >= 33
ORDER BY FISH_TYPE;

 

 

오답 노트

HAVING AVG(IF(LENGTH IS NULL, 10, LENGTH)) >= 33

  • group by 조건문에서 계속 틀렸다
  • 문제에서 단, 잡은 물고기의 길이가 10cm 이하일 경우에는 LENGTH 가 NULL 이며, LENGTH 에 NULL 만 있는 경우는 없습니다.
  • 라고 명시를 했기 때문에 평균 구할때 조건을 걸어줘야한다
  • LENGTH가 NULL 이면 10으로 대체해주고 아닐경우 그대로 LENGTH로 해서 평균을 구하기!
  • 저 조건은 avg 평균 구할때만 적용이 되고 count, max 할때는 적용이 안된다

 

 

반응형
LIST
Comments