您好,感谢您的关注!
我正在搜索包含某些带有全文搜索的字符串的文章,如下所示:
SELECT * FROM Articles_fts WHERE body MATCH 'monkey OR banana OR "hungry gorilla"';
我真正的搜索要长得多(22 个术语),可能不是最聪明的方法,但它正在工作,所以那里没有问题。
我需要帮助...
现在我想返回这个搜索返回的对立面。换句话说,我想要所有不包含猴子、香蕉或“饥饿的 gorilla ”的文章。
首先十分感谢!
最佳答案
只有在 SQLite 使用 enhanced FTS query syntax enabled 编译时才可用。 .
否则,您可以使用 SQL 集合操作来否定结果:
SELECT *
FROM Articles
WHERE id NOT IN (SELECT docid
FROM Articles_fts
WHERE body MATCH '...')
关于SQlite3 fts 否定搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28743932/