오랜만에 보는 연산자들 속출.
문제는 간단하다.
city의 이름이 a, e, i, o, u로 시작하는 query들을 중복없이 반환하라는 것이다.
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%';
일단 이게 내 풀이다. 내가 아는 like와 or을 이용한 최대의 풀이... 하지만 Or을 저렇게 여러 번 쓰는 게 너무 비효율적인 것 같아 보여 discussion에 들어가 확인해보았다.
SELECT DISTINCT(CITY)
FROM STATION
WHERE CITY RLIKE '^[aeiou]';
간만에 보는 (결론은 모르는) 연산자가 속출했다.
select *
from table
where name like '%김%';
select *
from table
where name like '홍__';
select *
from table
where name rlike '강....';
// .은 단일 문자를 의미하므로, 위의 ....은 영문 4글자, 혹은 한글 2글자와 대응
// 이를 다르게 표현하면
where name rlike '강.{4}';