2015-01-21 88 views
7

我現在有基於具有相同值的列選擇..SQLite從哪裏選擇列包含字符串?

"SELECT * FROM users WHERE uuid = ?" 

但是如果我想返回基於「含有」的字符串值,其中一列一列?一些僞代碼將是:

SELECT * FROM users 
WHERE column CONTAINS mystring 

任何幫助表示讚賞,我一直在尋找其他答案,但無濟於事。

回答

18

SELECT * FROM users WHERE column LIKE '%mystring%'將做到這一點。

LIKE意味着我們沒有完全匹配(column = value),但做了更多的模糊匹配。 「%」是一個通配符 - 它匹配0個或更多字符,所以這就是說「所有列中有0個或多個字符的行,後面跟着」mystring「,後跟0個或多個字符」。

3

使用LIKE子句。 例如如果你的字符串包含"pineapple123",您的查詢將是:

SELECT * from users WHERE column LIKE 'pineapple%'; 

如果你的字符串總是與任意數量的開頭,並以任何數量的像"345pineapple4565"結束,你可以使用:

SELECT * from users WHERE column LIKE "%pineapple%";