如何在sqlite3中搜索字符串的一部分?

vawmfj5a  于 2023-06-23  发布在  SQLite
关注(0)|答案(3)|浏览(202)

我想为我的一个sqlite3表创建搜索。使用文本字段或下拉组合,搜索应在输入3个字母后开始,并应返回在表中找到的一些建议。至少是这样的。
现在我只能在数据库中搜索字符串的一部分。

"SELECT * FROM album WHERE artist='Audiosl'"

返回空搜索以及

"SELECT * FROM album WHERE artist LIKE 'Audiosl'"

有办法做到吗?

6ojccjat

6ojccjat1#

"SELECT * FROM album WHERE artist LIKE '%Audiosl%'"将完成您的任务。
这将搜索像T AudioslAudiosl23T Audiosl23等字符串。
更多信息请参考:http://www.sqlite.org/lang_expr.html

v440hwme

v440hwme2#

仔细看看如何使用LIKE SQLite运算符。这将使您的声明变为以下内容:

SELECT * FROM album WHERE artist LIKE 'Aud%'"

%匹配零个或多个字符。SQLite文档中还有更多的运算符。

qhhrdooz

qhhrdooz3#

SQLite包括一个官方的full text search扩展,它提供了适合大量文本字段的功能,正如你的模式所暗示的那样。您可以执行字段样式搜索(artist:*a* album:"greatest hits") plus all the other stuff you would expect (NEAR, AND, OR, exclusions).
我强烈建议您使用此扩展,而不是构建自己的查询。

相关问题