2016-10-20 38 views
0

我有一個字符串:A%APostgreSQL - 如何在字符串條件下使用通配符

我想查找數據庫中所有以A%A開頭的字符串。

例子:

AABCD - false 
AABCE - false 
AA%BC - true 

我使用SQL語句:

Select * from Tabel where Column like 'AA%B%' 

但結果是:

AABCD 
AABCE 
AA%BC 

由於字符串包含通配符 '%' 和Postgres選擇錯誤。

請建議我一個解決方案

+0

檢查此[如何逃避字符串,而匹配模式在postgresql](http://stackoverflow.com/questions/10153440/how-to-escape-string-while-matching -pattern-in-postgresql)如果有幫助。 – NzGuy

回答

2

逃脫%字符,使用\這樣\%

UPDATE

Another approach可以通過使用ESCAPE關鍵字與後空字符串來實現,這樣你告訴postgres禁用轉義,並%成爲一個正常的字符

select * from Table where Column like '%' ESCAPE '';