有没有办法在列中搜索特定的字符串?
我想搜索SELECT*从email_fts WHERE email_fts MATCH'到:"a@b.com"或者来自:"c@d.com"'
提前致谢,
马诺
确保在FTS索引中创建正确的FTS列:
CREATE VIRTUAL TABLE email_fts USING fts3(subject, body, "to", "from");
然后您可以搜索单个FTS列:
SELECT rowid FROM email_fts WHERE "to" MATCH 'a@b.com' UNION SELECT rowid FROM email_fts WHERE "from" MATCH 'c@d.com'
编辑:我之前的回答OR
在WHERE
条款中有一个.显然sqlite不支持将OR
查询与MATCH
条件组合.上述工会有效.
FTS文档在这里,这是文档中使用的示例之一.
http://sqlite.org/fts3.html