如何在全文搜索中匹配三个值/关键字?

时间:2014-10-23 16:31:09

标签: sqlite full-text-search fts4

我正在使用类似下面的查询:

SELECT id, description 
FROM FullTextTable
WHERE FullTextTable MATCH '1.010 OR 1.01 OR 1.0100'

如果我只使用两个' OR'运算符,查询按预期返回,但当我尝试使用三个或更多“OR”时,我得不到任何结果。运营商。您如何使用查询来检查三个或更多值中的任何一个?

这是使用Sqlite FTS4标准全文查询语法,我认为不支持使用括号更改操作顺序。

我的描述包含任意精度级别的小数值,我们的用户不一定会以与描述中存储的相同的精度级别进行搜索(例如,用户可能想要搜索1.010,但描述实际上是措辞为1.01或1.0100,用户不会提前知道这一点。

1 个答案:

答案 0 :(得分:2)

使用默认的标记生成器,句点不是单词的一部分。 您的查询与

相同
... MATCH '1 010 OR 1 01 OR 1 0100'

改为使用词组查询:

... MATCH '"1.010" OR "1.01" OR "1.0100"'