해커랭크 SQL문제_0802

starlikedh
|2021. 8. 2. 23:35

Weather Observation Station12

문제: Query the list of CITY names from STATION that do not start with vowels and do not end with vowels. 
Your result cannot contain duplicates.

풀이: CITY 중에서 모음으로 시작하지 않고 모음으로 끝나지 않는 것들을 중복을 제거해서 출력하는 문제이다.
이 문제 역시 MySQL 정규식으로 해결할 수 있었고, 앞선 11번 문제에서 OR을 AND로만 바꾸면 해결이 가능한 문제였다.

SELECT DISTINCT CITY
FROM STATION
WHERE CITY REGEXP '^[^aeiou]' AND CITY REGEXP '[^aeiou]$';

Weather Observation Station13

문제: Query the sum of Northern Latitudes (LAT_N) from STATION having values greater than 38.7880 and less than 137.2345. Truncate your answer to  4 decimal places.

풀이: 값이 38.7880보다 크고 137.2345보다 작은 STATION의 북위도(LAT_N) 합계를 구하도록 하되 소수점 4자리수로 답을 잘라내는 문제.
TRUNC로 자르고 SUM으로 합계 구하고 38.7880보다 크고 137.2345보다 작은 것은 WHERE절에 조건 주어서 쿼리문 완료.

SELECT TRUNC(SUM(LAT_N), 4) AS TOTAL
FROM STATION
WHERE LAT_N > 38.7880 AND LAT_N < 137.2345;

Weather Observation Station14

문제: Query the greatest value of the Northern Latitudes (LAT_N) from STATION that is less than 137.2345. 
Truncate your answer to 4 decimal places.

풀이: 137.2345를 넘지 않는 최대의 LAT_N을 구하는 문제.
앞선 쿼리에서 SUM으르 MAX로 바꾸고 조건만 변경해주면 간단히 완료!

SELECT TRUNC(MAX(LAT_N), 4) AS MAX_LAT_N
FROM STATION
WHERE LAT_N < 137.2345;

'Database' 카테고리의 다른 글

해커랭크 SQL문제_0804  (0) 2021.08.04
해커랭크 SQL문제_0803  (0) 2021.08.03
코딩테스트 연습_0729  (0) 2021.07.29
코딩테스트 연습_0728  (0) 2021.07.28
코딩테스트 연습_0723  (0) 2021.07.23