2015-10-15 37 views
0

我只想查詢包含此確切字符串的字符串string_SQL Like沒有使用_

我嘗試這樣做:

select * from table where name like "%string_%" 

和成果還包括string-,但我只需要精確_

任何幫助?

感謝

+0

_是LIKE通配符,您需要轉義才能搜索該字符。 – jarlh

+0

我們在談論哪個數據庫服務器? –

+0

你的意思是「\」?還有「%string \ _%」不起作用 –

回答

2

_是單個字符在SQL通配符。如果你要搜索_你需要逃避它:

select * 
from some_table 
where name like '%string\_%' escape '\' 

此外:字符串文字投入在SQL單引號。如果您想要使用更符合標準的DBMS(Oracle,Postgres),您應該習慣使用單引號字符串。雙引號僅用於標識符(基本上應該首先避免)

+0

只是一個小的說明,有一個單引號/雙引號不一致。 – jarlh

+0

@jarlh:你說得對。我剛剛複製了原來的聲明。我修復了「無效」雙引號。 –

+0

它使用單引號......謝謝。我也嘗試過\但雙引號問題。完成。非常感謝 –