| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 |
- sql
- 인터프리터언어
- 구름톤
- 컴파일언어
- NumPy
- xla
- 해커랭크
- streamlit
- hackerrank
- 자료구조
- ML
- 오라클
- 컴파일러
- python
- BM25
- Oracle
- string 모듈
- 해시테이블
- pandas
- 프로그래머스
- Compiler
- Relation Extraction
- 코테
- 판다스
- TF-IDF
- 코딩
- 코딩테스트
- 파이썬
- 해시
- 프로그래밍
- Today
- Total
문제 링크
https://www.hackerrank.com/challenges/weather-observation-station-5/problem?isFullScreen=true
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에서 가장 짧은 도시 이름과 가장 긴 도시 이름 및 각각의 길이(예: 이름의 문자 수)를 쿼리합니다.
두 개 이상의 가장 작거나 큰 도시가 있는 경우 알파벳 순으로 정렬할 때 가장 먼저 오는 도시를 선택합니다.
참고 : 원하는 출력을 얻기 위해 두 개의 쿼리를 별도로 작성할 수 있습니다. 단일 쿼리일 필요는 없습니다.
LENGTH 함수, UNION ALL, ROWNUM을 이용한 풀이

select city, length(city)
from station
where length(city) = (select min(length(city)) from station)
order by 1 asc
-- LENGTH 함수를 이용하여 city의 문자열 길이를 구하고 그중 가장 작은(min) 것을 뽑는다
-- where 절에 단일행 서브 쿼리로 넣어서 문자열의 길이가 가장 작은 도시 이름과 길이를 출력한다
-- 이때, 문자열의 길이가 가장 작은 값의 도시가 여러 개가 나올 수 있으므로 알파벳 순으로 출력해 놓는다
select city, length(city)
from station
where length(city) = (select max(length(city)) from station)
order by 1 asc
-- LENGTH 함수를 이용하여 city의 문자열 길이를 구하고 그중 가장 긴(max) 것을 뽑는다
-- where 절에 단일행 서브 쿼리로 넣어서 문자열의 길이가 가장 긴 도시 이름과 길이를 출력한다
-- 이때, 문자열의 길이가 가장 작은 값의 도시가 여러 개가 나올 수 있으므로 알파벳 순으로 출력해 놓는다
where rownum = 1
"두 개 이상의 가장 작거나 큰 도시가 있는 경우 알파벳 순으로 정렬할 때 가장 먼저 오는 도시를 선택한다."
-- 가장 먼저 오는 하나의 도시를 뽑기 위해 ROWNUM을 사용한다
-- union all을 통해 두 결과를 함께 출력한다
'SQL' 카테고리의 다른 글
| (HackerRank) 해커랭크 SQL [Higher Than 75 Marks] Oracle 풀이 (0) | 2021.12.02 |
|---|---|
| (HackerRank) 해커랭크 SQL [Weather Observation Station 8] Oracle 풀이 (0) | 2021.12.02 |
| (프로그래머스) SQL Level 4 [우유와 요거트가 담긴 장바구니] Oracle 풀이 (0) | 2021.11.30 |
| (프로그래머스) SQL Level 4 [보호소에서 중성화한 동물] Oracle 풀이 (0) | 2021.11.30 |
| (프로그래머스) SQL Level 4 [입양 시각 구하기(2)] Oracle 풀이 (0) | 2021.11.30 |