Database
[Oracle]Weather Observation Station 17(풀이 성공)
전봇대파괴자
2021. 4. 16. 23:27
문제
아래와 같은 스키마 STATION이 주어진다.
38.7780 보다 큰 LAT_N 중 가장 작은 값에 접근하라. 그리고 소수점 아래 넷째자리까지 표현하라.
내 코드:
select round(long_w, 4)
from (select *
from station
where lat_n > 38.7780
order by lat_n)
where rownum=1;
Comment: from 뒤의 괄호 안에서 미리 조건을 부여하여 스키마를 어느 정도 정돈하는 것이 필요합니다. 우선 38.7780보다 많은 값을 모두 선택한 후, order by를 활용해 오름차순으로 정렬하면 조건에 맞는 값 중 가장 작은 값(우리가 접근해야 하는 값)이 가장 위쪽에 오게 됩니다.
남은 것은 where를 통해 꺼낸 후, round 함수로 소수점 아래 넷째자리까지 표시하는 것입니다.