2011-03-30 54 views

回答

23
where col like '%|%%' escape '|' 
+0

謝謝!不知道你可以指定一個任意的轉義字符 – 2011-03-31 09:47:01

4

試試這個:

SELECT * 
    FROM <YOUR_TABLE> 
WHERE <YOUR_COLUMN> LIKE '%\%%' 
+0

因此,爲了澄清一點,這個例子正在尋找「」。在這種情況下,百分號字面值被轉義爲'\%'。 – rinogo 2015-10-29 21:29:54

2

我beleive如果我沒有記錯了MySQL逃逸是 「\」 字符。

你可以做一個選擇,如:

SELECT * FROM myTable WHERE myColumn LIKE '%\%%' 
+0

當我在mysql代碼中看到\時,我感到非常激動,因爲它通常與php配對,並且出現錯誤的可能性是無窮的 – RichardTheKiwi 2011-03-30 17:38:26

+0

喜歡可能包含或不包含'%'的列僅僅是錯誤的mojo imo ...但我不知道OP的要求是什麼,所以我會把自己的見解放在包裏的那隻特定的貓身上。不知道OP使用的環境或語言無法真正添加更多......但是...... php + mysql中的轉義字符可能很糟糕。 – Patrick 2011-03-30 18:07:48

+0

它不能從PHP中使用。這只是一個「維護查詢」,我想運行它來檢查有多少網址包含轉義字符。感謝您的答案! – 2011-03-31 09:46:19

0
Select * from table_name 
WHERE [column_name] like '%['+char(37)+']%' 
0

如果您想使用不常用的特殊字符作爲轉義字符,請你可以這樣做:

WHERE col LIKE CONCAT('%', CHAR(0), '%%') ESCAPE CHAR(0); 
相關問題