SQLite FTS5 文档说支持搜索查询SELECT ... WHERE MATCH '<query1> NOT <query2>'
,但看起来不支持一元运算NOT
符。
例如,如果我想搜索所有不匹配的内容,我不能使用. 我将不得不使用,这是完全不同的事情(FTS5 模块永远不会看到运算符,因为它在引号之外)。只有引号内的文本是搜索查询。<query>
MATCH 'NOT <query>'
NOT MATCH '<query>'
NOT
我需要找到一种在搜索查询NOT
中使用一元运算符的方法。我不能在外面使用它,因为我只能控制搜索查询文本,而不是 SQL 语句的其余部分。
我想到的一种可能的方法是找到一个匹配任何内容的搜索查询,然后执行MATCH '<match_anything> NOT <query>'
. 但是,我发现无法匹配搜索查询中的所有内容。
你能想出一种方法来让搜索查询中的一元运算符的行为NOT
吗?