高效匹配索引SQLite字段的第一个字符
我在SQLite中有两个表:高效匹配索引SQLite字段的第一个字符,sqlite,optimization,indexing,full-text-search,Sqlite,Optimization,Indexing,Full Text Search,我在SQLite中有两个表: CREATE TABLE article (body TEXT) CREATE TABLE article_word ( word TEXT, article_rowid INTEGER, FOREIGN KEY(article_rowid) REFERENCES article(rowid), PRIMARY KEY(word, article_rowid) ) 该程序将长字符串存储在article.body中,对于字符串中的每
CREATE TABLE article (body TEXT)
CREATE TABLE article_word (
word TEXT,
article_rowid INTEGER,
FOREIGN KEY(article_rowid) REFERENCES article(rowid),
PRIMARY KEY(word, article_rowid)
)
该程序将长字符串存储在article.body
中,对于字符串中的每个单词,它将该单词的小写版本与article\u word
中文章的rowid
一起存储
我想让用户通过单词中第一个不区分大小写的字符来搜索文章,因此搜索baz
会生成一篇包含foobar-bazzux-spambacon
的文章
如何修改表/添加更多表(如有必要)并以最佳方式查询表中的匹配项?做
从文章a中选择a.rowid、a.body,其中w.word如“baz%”和a.rowid=w.article\u rowid
利用
article\u word.word上的主键
索引
还是它会天真地搜索每一行?使用NSPredicate根据您的
您还可以像在核心数据中一样使用Sqlite进行映射。为什么不使用Sqlite的?