개발로그필름

[SQL] 노선별 평균 역 사이 거리 조회하기 본문

coding test/프로그래머스

[SQL] 노선별 평균 역 사이 거리 조회하기

yuullog 2025. 6. 15. 21:55
728x90
반응형
SMALL
반응형

 

 

 

 

정답 쿼리
SELECT 
    ROUTE,
    CONCAT(ROUND(SUM(D_BETWEEN_DIST), 1),'km') AS TOTAL_DISTANCE,
    CONCAT(ROUND(AVG(D_BETWEEN_DIST), 2),'km') AS AVERAGE_DISTANCE
FROM SUBWAY_DISTANCE
GROUP BY ROUTE
ORDER BY SUM(D_BETWEEN_DIST) DESC;

 

 

오답 노트

ORDER BY SUM(D_BETWEEN_DIST) DESC

  • order by는 가장 마지막에 실행이 된다
  • 앞에 select 절에서 concat으로 문자열로 만들어서 TOTAL_DISTANCE 그대로 정렬을 하게 되면 다르게 정렬이 된다
  • 따라서 km형태가 아닌 (문자열 형태가 아닌) SUM(D_BETWEEN_DIST) 총 누계 거리 숫자 자체를 order by 해야 한다

 

CONCAT(ROUND(SUM(D_BETWEEN_DIST), 1),'km') AS TOTAL_DISTANCE,
CONCAT(ROUND(AVG(D_BETWEEN_DIST), 2),'km') AS AVERAGE_DISTANCE

  • 소수 둘째자리에서, 소수 셋째 자리에서 반올림을 한다는 것은 결국 소수 첫째 자리까지, 소수 둘째 자리 까지 나타내라는 것이다
  • 따라서 2, 3 숫자 그대로 쓰는 것이 아닌 round( ,1) round( ,2) 이렇게 나타내는 숫자까지의 숫자를 적어야 하는 점 명심!

 

 

 

 

반응형
LIST
Comments