SQL 쿼리 연습/GROUP BY

[Lv.2 / 프로그래머스 / SQL] 노선별 평균 역 사이 거리 조회하기

김세진 2024. 6. 24. 22:38
반응형

 

 

 

 

 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

 

풀이

 

노선별로 총 거리와 평균 거리를 반환해야 한다.

 

주의해야 할 점은 총 누계 거리를 기준으로 내림차순 정렬을 해야 하는데, TOTAL_DISTANCE를 그대로 정렬 기준으로 삼는다면 문자열이기 때문에 정확한 크기 비교가 되지 않는다. 따라서 문자열 형태가 아니라 숫자 형태로 비교를 해야 한다.

 

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

 

 

 

 

 

반응형