MySQL/Problem Solving
[HackerRank] Weather Observation Station 11
hanshow113
2022. 1. 9. 21:09
OR 연산자 구조를 잘 생각해야 함.
A or B 인 경우 A나 B가 둘 중 하나라도 True 이거나 모두 True 인 경우에 True를 반환
따라서
1. (not A) or (not B)
2. not (A or B) = (not A) and (not B)
[1]
SELECT DISTINCT(CITY)
FROM STATION
WHERE CITY REGEXP "^[^aeiou]|[^aeiou]$";
[2]
SELECT DISTINCT(CITY)
FROM STATION
WHERE CITY NOT REGEXP "^[aeiou]"
OR CITY NOT REGEXP "[aeiou]$";
[3]
-- Wrong Answer
SELECT DISTINCT(CITY)
FROM STATION
WHERE CITY NOT REGEXP "^[aeiou]|[aeiou]$";
OR 연산자 구조를 잘 생각해야 함.
A or B 인 경우 A나 B가 둘 중 하나라도 True 이거나 모두 True 인 경우에 True를 반환
따라서
[2]번 쿼리문의 경우 (not A) or (not B)
[3]번 쿼리문의 경우 not (A or B) = (not A) and (not B)