본문 바로가기
SQL

[HackerRank] Weather Observation Station 5 풀이 (Oracle)

by 유림유림 2021. 2. 26.
반응형

문제

Weather Observation Station 5 | HackerRank

 

Weather Observation Station 5 | HackerRank

Write a query to print the shortest and longest length city name along with the length of the city names.

www.hackerrank.com

STATION 테이블에서 도시 이름(CITY)이 가장 짧은 것과 긴 것을 각각의 길이와 함께 출력
도시 이름의 길이가 같을 경우 알파벳순으로 정렬할 때 가장 먼저인 것을 출력

 

풀이

Oracle의 윈도우 함수 ROW_NUMBER를 이용하여 풀이했습니다.

SELECT CITY, LEN
  FROM (
        SELECT CITY
             , LENGTH(CITY) LEN
             , ROW_NUMBER() OVER(ORDER BY LENGTH(CITY), CITY)      RN_MIN
             , ROW_NUMBER() OVER(ORDER BY LENGTH(CITY) DESC, CITY) RN_MAX
          FROM STATION
       )
 WHERE (RN_MIN = 1 OR RN_MAX = 1)
 ORDER BY LEN
;

 

결과

 

반응형

댓글