2016-02-15 43 views
0

我是SQL-mySQL中的超級新手,我想查詢這些包含具有特定值的列的條目,但該值中已經有引號,它看起來像這樣,引號已經存在有: 「博物館VOOR土地恩Volkenkunde,鹿特丹,荷蘭」 所以,我想:MySQL報價Mar

SELECT * FROM this_table WHERE museum_name LIKE "Museum Voor Land-en Volkenkunde, Rotterdam, Holland"; 

回報 空集(0.00秒) 我知道一個事實,是不是真的! 然後,我嘗試(我都嘗試用雙引號,單引號,實在不行)

select * from this_table where museum_name=" "Museum Voor Land-en Volkenkunde, Rotterdam, Holland" "; 

回報: ERROR 1064(42000):你在你的SQL語法錯誤;請檢查與您的MySQL服務器版本相對應的手冊,以找到正確的語法,以在'Holland Voor Land-en Volkenkunde,荷蘭鹿特丹'附近使用'''''在線1

請讓我知道如何查詢特定的東西已經包含引號。

+1

您可以使用單引號而產生查詢 –

回答

0

嘗試這樣

SELECT * FROM this_table WHERE museum_name LIKE '"Museum Voor Land-en Volkenkunde, Rotterdam, Holland"'; 

OR

SELECT * FROM this_table WHERE museum_name LIKE "\"Museum Voor Land-en Volkenkunde, Rotterdam, Holland\""; 

要SCAPE引號。

0

您可以只使用轉義字符\或在LIKE子句中使用單引號'或使用%

像這樣:

SELECT * FROM this_table WHERE museum_name LIKE "%Museum Voor Land-en Volkenkunde, Rotterdam, Holland%"; 

OR

SELECT * FROM this_table WHERE museum_name = "\"Museum Voor Land-en Volkenkunde, Rotterdam, Holland\""; 

OR

SELECT * FROM this_table WHERE museum_name = '"Museum Voor Land-en Volkenkunde, Rotterdam, Holland"'; 
0

你應該使用backsalsh \

轉義字符串
SELECT * FROM <tbl> WHERE col1 = "gh\"gh" 

SELECT * FROM <tbl> WHERE col1 = 'gh"gh' 

既會工作,但它是更好地使用第一種方法