YataNox

[My_SQL] Lv.2 노선별 평균 역 사이 거리 조회하기 본문

DB/Programmers SQL

[My_SQL] Lv.2 노선별 평균 역 사이 거리 조회하기

에이디/김우진 2024. 11. 23. 16:44

문제

 

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

 

프로그래머스

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

programmers.co.kr

 

호선 별로 그룹화하고 역간의 거리를 기준으로 합치면(sum) 총 누계거리,

평균내면(avg) 평균 거리가 나온다. 각각 2,3자리번째의 수에서 반올림 해주고 concat을 이용해서 km단위를 붙여준다.

 

ps. 처음에 order by할 때 2 desc를 했다가 틀렸다. 

반올림 처리 되는 값 때문에 원하는 대로 정렬이 안될 수 있으니 반올림한 부분을 제외하고 정렬처리하자

코드

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;