작성
·
294
0
안녕하세요!
weather observation station 12 문제 풀이 중,
not like 와 <> 의 차이에 대해 궁금한 부분이 생겨 문의드립니다.
커뮤니티 게시판을 살펴보며 유사한 문의와 답변을 확인했는데요. (where 해커랭크 문제풀이2 > 커뮤니티 > 21.1.9 작성 게시글)
답변 내용 중, <>를 사용한 예시는 'happy'를 걸러내는 건 맞지만, '%happy%'를 걸러내는 조건문은 아닌 것 같아서요.
<> '%happy%' 로 작성하면 unhappy라는 텍스트에는 happy라는 단어가 들어가있으니 출력이 되지 않을 것 같은데요...
만약 출력이 된다면
1) <>는 like의 의미가 없는 ≠의 의미이며
2) <> '%happy%'에서 %는 와일드카드가 아닌 텍스트로 인식한다
로 이해하면 될까요??
[참고 - 아래 문의 중 답변내용]
조건이 데이터 not like '%happy%'일 경우 happy라는 글자가 어떤식으로라도 들어가 있을 경우 데이터가 출력되지 않습니다. 즉, 'unhappy'라는 텍스트 데이터는 '%happy%'의 패턴에 포함되므로 출력되지 않습니다.
그러나 조건이 데이터 <> 'happy'일 경우 'unhappy'라는 텍스트는 'happy'라는 텍스트와 같은 것이 아니므로 출력이 가능합니다.
문제 풀어보시면서 여러가지 경우의 수에 대하여 not like와 <>으로 실험을 해보시면 이해가 빠르실 것으로 생각됩니다.
[참고2 - 제가 풀이한 방법]
SELECT DISTINCT city
FROM station
WHERE city <> "a%"
and city <> "e%"
and city <> "i%"
and city <> "o%"
and city <> "u%"
and city <> "%a"
and city <> "%e"
and city <> "%i"
and city <> "%o"
and city <> "%u"
답변 2
0
<> '%happy%' 로 작성하면 unhappy라는 텍스트에는 happy라는 단어가 들어가있으니 출력이 되지 않을 것 같은데요...
만약 출력이 된다면
1) <>는 like의 의미가 없는 ≠의 의미이며
2) <> '%happy%'에서 %는 와일드카드가 아닌 텍스트로 인식한다
로 이해하면 될까요??
<> '%happy%’라는 조건을 걸면 문자열이 정확히 ‘%happy%’ 인 데이터만 제외하고 나머지는 전부 추출 대상이 되므로, ‘unhappy’도 출력되는 것이 맞습니다.
1), 2) 질문의 답 모두 ‘그렇다’입니다.
0
안녕하세요, 인프런 AI 인턴이에요.
not like와 <>는 둘 다 비교 연산자로 사용되며, 두 개의 값이 서로 다른지 확인하는 역할을 합니다. 두 연산자의 차이점은 사용 방법에 있습니다.
not like는 SQL에서 사용되는 연산자로, 문자열 비교를 위해 사용됩니다. 이 연산자는 와일드카드 문자열 패턴을 사용할 수 있으며, 정확히 일치하지 않는 문자열을 선택합니다. 예를 들어, not like '%happy%'
는 “happy”를 포함하지 않는 문자열을 선택합니다.
반면에 <> 연산자는 대부분의 프로그래밍 언어에서 사용되는 비교 연산자로, 두 값이 서로 다른지 확인하는 역할을 합니다. 예를 들어, <> 'happy'
는 “happy”가 아닌 값을 선택합니다. 이 경우, “unhappy”와 같이 “happy”가 아닌 값을 선택하게 됩니다.
따라서, 두 연산자는 비슷한 역할을 하지만 사용하는 문맥에 따라 다르게 동작합니다. not like는 문자열 패턴을 비교할 때 사용되고, <>는 두 값의 동등성을 확인할 때 사용됩니다.
사용자가 언급한 예시에서, <> '%happy%'
는 “unhappy”와 같이 “happy”가 아닌 값을 선택합니다. 와일드카드 문자열 패턴은 사용되지 않고, 단순히 “happy”가 아닌 값을 선택하는 것입니다.
더 자세한 내용이 필요하신 경우, 예시를 보다 구체적으로 제시해주시면 더욱 정확한 답변을 드릴 수 있을 것 같아요.