[MySQL] Hacker Rank 문제 연습 3

Lake·2024년 5월 27일
0

SQL 문제

목록 보기
31/36
post-thumbnail

Weather Observation Station 5 (Basic Select)

제출한 쿼리 :

(
    SELECT CITY, LENGTH(CITY) AS LEN
    FROM STATION
    ORDER BY LENGTH(CITY) ASC, CITY ASC
    LIMIT 1
)

UNION ALL

(
    SELECT CITY, LENGTH(CITY) AS LEN
    FROM STATION
    ORDER BY LENGTH(CITY) DESC, CITY ASC
    LIMIT 1
);

Weather Observation Station 6 (Basic Select)

제출한 쿼리 :

SELECT DISTINCT CITY
FROM STATION
WHERE LEFT(CITY, 1) IN ('a', 'e', 'i', 'o', 'u');

LEFT 함수

  • 문자열의 왼쪽에서부터 지정한 수의 문자를 반환하는 함수
LEFT(문자열, 길이)
  • 길이 : 반환할 문자 수(정수). 문자열의 왼쪽부터 얼마나 많은 문자를 반환할지를 나타낸다.

    예)
SELECT LEFT('Hello, World!', 3);

반환값 : Hel

물론

SELECT DISTINCT CITY
FROM STATION
WHERE CITY LIKE 'a%' 
   OR CITY LIKE 'e%' 
   OR CITY LIKE 'i%' 
   OR CITY LIKE 'o%' 
   OR CITY LIKE 'u%';

이렇게 하나하나 작성하는 방법도 있다.


Weather Observation Station 7 (Basic Select)

제출한 쿼리 :

SELECT DISTINCT CITY
FROM STATION
WHERE RIGHT(CITY, 1) IN ('a', 'e', 'i', 'o', 'u');

LEFT 함수와 반대이다. 사용법은 동일


Weather Observation Station 8 (Basic Select)

제출한 쿼리 :

SELECT DISTINCT CITY
FROM STATION
WHERE LEFT(CITY, 1) IN ('a', 'e', 'i', 'o', 'u')
  AND RIGHT(CITY, 1) IN ('a', 'e', 'i', 'o', 'u');

Weather Observation Station 9 (Basic Select)

제출한 쿼리 :

SELECT DISTINCT CITY
FROM STATION
WHERE LEFT(CITY, 1) NOT IN ('a', 'e', 'i', 'o', 'u');

0개의 댓글