sqlite3 fts3多列搜索包括特殊字符

时间:2016-10-13 07:30:20

标签: sqlite full-text-search multiple-columns

我正在使用sqlite3 fts3。 (sqlite3版本是3.7.17)

我尝试在多列中搜索包含特殊字符(例如@,?)的关键字。

这是我的例子。

SELECT * FROM table_name WHERE table_name MATCH 
'EMAIL:aaa@test.com OR SUBJECT:is it a question?' 

此查询必须返回电子邮件地址为“aaa@test.com”的结果,或者主题是“这是一个问题吗?”

但是这个查询并没有返回正确的结果。 我认为sqlite3 fts3无法识别特殊字符......

我该如何解决这个问题? :(

1 个答案:

答案 0 :(得分:0)

要执行phrase query,您必须使用引号。

特殊字符会被默认tokenizer过滤掉; aaa@test.com必须用三个字来处理。