[英]MySQL "Invalid use of group function" error - Hackerrank Weather observation 20
[英]mysql regex pattern matching [Weather Observation Station 11]
我在練習這個問題【氣象觀測站11】的時候用
select distinct city
from station
where regexp_like(city, '^[^aeiou]|[^aeiou]$');
給了我正確的答案(458 個結果)
select distinct city
from station
where not regexp_like(city, '^[aeiou]|[aeiou]$');
給了我錯誤的答案(299 個結果)。
我覺得'^[^aeiou]'
和NOT '^[aeiou]'
都應該給我不以 aeiou 結果開頭,但顯然不是。 這兩個答案之間的邏輯差異是什么?
它們看起來相同,但它們不同。
regexp_like(city, '^[^aeiou]|[^aeiou]$')
如果city
以輔音(非元音)開頭或結尾,這將返回匹配項。
然而:
not regexp_like(city, '^[aeiou]|[aeiou]$')
如果city
不以元音開頭且不以元音結尾,則將返回匹配項,或者換句話說,如果city
以輔音(非元音)開頭並結束,則將返回匹配項。
注意兩個表達式中OR
和AND
之間的不同,這將導致第一個表達式中的匹配比第二個表達式更多。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.