2017-02-27 109 views
-1

我知道我們可以在SQL查詢中使用LIKE謂詞來查找包含字母數字和特殊字符(WHERE desc LIKE'%#%')的行。但是,如何查找包含「%」符號的行? (WHERE desc LIKE'%%%'返回全部行)。SQL Query查詢包含「%」的行

+3

你使用了什麼[標籤:rdbms]? – Mureinik

+1

你研究過了嗎?看起來像一個非常簡單的答案,以快速的谷歌搜索找到。 –

回答

3

這取決於您的數據庫引擎。
\%是MySQL和Oracle中%的轉義字符。

WHERE desc LIKE '%\%%' 
+0

juergen d,感謝您的快速響應,但這並不適用於我(我正在使用SQL Server 2012)。然而,這工作:WHERE desc LIKE'%[%]%'(見[link] http://www.techtamasha.com/escape-single-quotes-and-wild-cards-_-in-ms-sql/ 20) – Vik

1

轉義字符在SQL Server中很難遵循。只是讓文字

WHERE desc LIKE '%[%]%' 

按照部分"Using Wildcard Characters As Literals"

要使用通配符作爲文字字符,在方括號括起來的通配符。

0

ANSI SQL允許您使用escape子句指定轉義字符,例如,

where desc like '%\%%' escape '\'