Coding Test/SQL Coding Test

[프로그래머스 / SQL] - 잡은 물고기의 평균 길이 구하기

nam_ji 2024. 6. 12. 23:28

잡은 물고기의 평균 길이 구하기

문제

  • 낚시앱에서 잡은 물고기들의 정보를 담은 FISH_INFO 테이블이 있습니다.
  • FISH_INFO 테이블에서
    1. 잡은 물고기의 평균 길이를 
    2. AVERAGE_LENGTH로 수정하여
    3. 평균 길이 소수점 3째자리에서 반올림하여
    4. 10CM 이하의 물고기들은 10CM로 취급하여
      (단, 10CM 이하일 경우 LENGTH가 NULL이며, LENGTH에 NULL만 있는 경우는 없습니다.)
  • 조회하는 문제입니다.


프로그래머스 코드

  • SELECT를 통해 조회하고 싶은 컬럼을 작성합니다.
  • 조회 시 조건이 있기 때문에 조건에 맞게 함수들을 사용합니다.
  • 우선 소수점 반올림을 위해 ROUND 함수를 사용합니다.
    ROUND(계산식, 반올림 후 자리)
  • 계산식에 LENGTH 컬럼의 값을 다 더하고 LENGTH의 개수를 구해 나눠줘야 합니다.
    여기서 다 더할 때 NULL인 값은 10으로 수정해야 하기 때문에 IFNULL을 사용했습니다.
    IFNULL(컬럼명, 대체할 값)
  • AS를 통해 조회되는 컬럼의 이름을 지정해주고
  • FROM을 사용하여 조회하고 싶은 컬럼이 속한 테이블 명을 작성해주면 됩니다.
-- 코드를 작성해주세요
SELECT ROUND(SUM(IFNULL(LENGTH, 10)) / COUNT(*), 2) AS AVERAGE_LENGTH
FROM FISH_INFO;