我正在使用类似下面的查询:
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,用户不会提前知道这一点。
答案 0 :(得分:2)
使用默认的标记生成器,句点不是单词的一部分。 您的查询与
相同... MATCH '1 010 OR 1 01 OR 1 0100'
改为使用词组查询:
... MATCH '"1.010" OR "1.01" OR "1.0100"'