Problem Solving
[HankerRank] Weather Observation Station 8/ MySQL/ 정규표현식
luminous13
2022. 3. 28. 13:15
문제
- 첫 문자와 마지막 문자 둘다 모음(a,e,i,o,u)인 도시 목록을 STATION 테이블에서 조회하세요
풀이
정규 표현식을 사용하지 않고 LIKE만을 이용해서 문제를 풀면 다음과 같습니다.
- LIKE는 문자열에 내가 원하는 문자열이 있는지 찾아줍니다.
- '%'는 0개 이상의 문자를 대신 표현합니다. 'a%'을 통해 'a', 'apple', 'area' 등을 찾을 수 있습니다.
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%')
and
( city like '%a'
or city like '%e'
or city like '%i'
or city like '%o'
or city like '%u');
정규표현식을 사용하면 더 간단하게 SQL문을 작성할 수 있습니다.
select city
from station
where
city regexp '^[aeiou]'
and
city regexp '[aeiou]$';
- ^는 시작하는 문자열을 찾습니다. 예를들어 "^바다"는 '바다'로 시작하는 문자열을 찾습니다.
-[]는 안에 나열된 패턴에 해당하는 문자열을 찾습니다. 예를들어 "[123]year"는 대상 문자열에서 '1year', '2year', '3year'을 찾을 수 있습니다.
- $는 ^와 반대로, 끝나는 문자열을 찾습니다. 예를들어 "과자$"는 대상 문자열에서 '과자'로 끝나는 문자열을 찾습니다.
출처:
https://www.hackerrank.com/challenges/weather-observation-station-8/problem?isFullScreen=true
Weather Observation Station 8 | HackerRank
Query CITY names that start AND end with vowels.
www.hackerrank.com