2015-01-21 25 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%";