Android 如何在sqlite fts3表中使用-*&引用;?
我有一个名为tab的fts3表,其中有很多条目。运行此查询时:Android 如何在sqlite fts3表中使用-*&引用;?,android,sqlite,full-text-search,fts3,Android,Sqlite,Full Text Search,Fts3,我有一个名为tab的fts3表,其中有很多条目。运行此查询时: SELECT * FROM tab WHERE key MATCH 'an*'; SELECT * FROM tab WHERE key MATCH 'an-*'; 我得到的结果如下: an anul an- 但当我运行此查询时: SELECT * FROM tab WHERE key MATCH 'an*'; SELECT * FROM tab WHERE key MATCH 'an-*'; 它仍然会生成“an”条目。结
SELECT * FROM tab WHERE key MATCH 'an*';
SELECT * FROM tab WHERE key MATCH 'an-*';
我得到的结果如下:
an
anul
an-
但当我运行此查询时:
SELECT * FROM tab WHERE key MATCH 'an*';
SELECT * FROM tab WHERE key MATCH 'an-*';
它仍然会生成“an”条目。结果是:
an
an-
如何编写查询以使结果不是“an”,而是仅包含字符“-”的条目?根据默认规则,-
分隔单词,否则将被忽略
您必须首先搜索单词an
,然后检查连字符:
SELECT *
FROM tab
WHERE key MATCH 'an'
AND key LIKE 'an-%';
-
是一个保留字符,如果我正确阅读文档,则用于设置操作。不幸的是,我不知道这里转义字符的语法是什么。您可以尝试一个\-*
。您可以在单引号内使用双引号使其正常工作。例如:“子文件夹”