2017-06-20 83 views
0

這是「Hackerrank」SQL通配符搜索問題

「從車站查詢CITY(列)名稱列表(表)不 開始與元音和不與元音結尾的問題。您的結果不能包含重複項「 」。

下面是我的答案,但我在Hackerrank中出現錯誤。我是否錯過了非常愚蠢的東西?

SELECT DISTINCT [City] FROM [Station] WHERE [City] NOT LIKE '[aeiou]%[aeiou]' 
+1

「迪拜」以元音結尾,但會出現在你的結果是不是'[aeiou]%[aeiou]'' –

+0

@MattGibson但是問題是關於城市是從一個元音開始,以元音結尾,有一個'和'的條件,對吧? – Prakazz

+2

要求不明確。他們是否想排除「亞特蘭大」,因爲它在開始和結束時都是一個元音,或者他們是想排除一切以「Austin」開頭還是以「Nashville」結尾的元音,包括那些同時兼有「亞特蘭大」 '?也許意思是第二種形式,其中列出的三個名字都不應出現。 – xQbert

回答

0

就打破它......

[City] NOT LIKE '[aeiou]%' AND [City] NOT LIKE '%[aeiou]' 
0

我要說起飛的開始和結束右括號aswel

[City] NOT LIKE 'aeiou%' AND [City] NOT LIKE '%aeiou' 
+0

這是不正確的。括號表示列出的或在一定範圍內的任何字符。您的查詢排除了字面上以'aeiou'開頭或以'aeiou'結尾的單詞,而不是任何一個字母。 – scsimon

+0

如果他想進入範圍,應該包含括號。你說得對。我認爲這是他不想要的信件 –

+0

OP聲明「不以元音開頭」,因此開始=單個字母。 – scsimon