2017-09-25 564 views
-3

需求是查詢其中包含'%'字符的所有字符串。例如:「約翰%」,「江淮%OB」SELECT查詢字符串包含'%'字符

爲「%」本身就是一個通配符,如何查詢呢??

提前致謝!

+0

在SQL'LIKE'語句中轉義字符串的兩種基本方法。方括號(例如'LIKE'%[%]%'')和單詞ESCAPE(例如'LIKE'%\ %%'ESCAPE'\'')。 – ZLK

+4

這是在MySQL還是SQL Server? – bbrumm

回答

1

當使用LIKE用通配符,如%,你能逃脫與\

SELECT * 
FROM yourtable 
WHERE yourstring LIKE '%John\%%' ESCAPE '\'; 

或者通配符:

SELECT * 
FROM yourtable 
WHERE yourstring LIKE '%Jac\%ob%' ESCAPE '\'; 

還發現,他們使用單引號包含字符串,而比雙引號。

感謝ZLK和blendenzo澄清在下面的意見。

+2

你似乎誤解了這個問題。我不認爲他們在問如何使用通配符。他們想知道如何查找實際包含%字符的字符串。 – blendenzo

+0

@blendenzo - 你是對的,我誤解了它。我已經更新了我的答案。謝謝。 – bbrumm

+1

沒有關鍵字「ESCAPE」,這仍然不起作用。例如,看我的評論。此外,他只是尋找包含百分號的字符串,而不是那些特定的字符串。 – ZLK