Algorithm/Programmers
프로그래머스 ) 잡은 물고기의 평균 길이 구하기 [SQL] - 오늘의 TIL
그리밍밍
2024. 4. 6. 11:39
https://school.programmers.co.kr/learn/courses/30/lessons/293259
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
👇소스 코드
case1. case문 활용
Length가 null일 경우 10을 아닐경우 Length를 반환하고 서브쿼리를 사용해서
Length의 평균을 구해준 후 Round함수를 이용해 소수 둘째자리까지 나타내주었다.
SELECT ROUND(AVG(AA.LENGTH),2) AS AVERAGE_LENGTH
FROM (
SELECT
CASE WHEN LENGTH IS NULL
THEN 10
ELSE LENGTH
END AS LENGTH
FROM FISH_INFO
) AA
case2. COALESCE 함수 활용
case1을 하다보니 서브쿼리를 이용하지 않아도 되겠다 싶어서 COALESCE함수를 이용하였다.
LENGTH를 순서대로 NULL이 아닌 값을 반환하게 되는데 만약 NULL일 경우는 10을 반환한다.
나머지는 위와 똑같다!
SELECT ROUND(AVG(COALESCE(LENGTH, 10)), 2) AS AVERAGE_LENGTH
FROM FISH_INFO;
728x90