匹配查询中的 SQLite 逗号转义
SQLlite comma escape in match query
我有一个 match
查询,例如:
select * from items where itemdesc MATCH (',')
它 return 完全没有意义的数据 - 包含分号、点等的东西
但是 like
查询 return 是一个正确的数据集。
select * from items where itemdesc like ('%,%')
当我有逗号时如何正确 return MATCH
查询中的数据 - 撇号仍然存在同样的问题,不确定是否有更多匹配查询不喜欢的字符.
SQlite fts4 虚拟表不处理标点符号,它们只是被 space 代替...
https://www.sqlite.org/fts3.html#tokenizer
所以我所做的只是声明 tokenchars:
"tokenize=unicode61" + " \"" +"tokenchars=.,/?!:;\"
您的实际搜索字符串也必须用引号引起来 - MATCH '",*"'
虽然它不处理引号....
我有一个 match
查询,例如:
select * from items where itemdesc MATCH (',')
它 return 完全没有意义的数据 - 包含分号、点等的东西
但是 like
查询 return 是一个正确的数据集。
select * from items where itemdesc like ('%,%')
当我有逗号时如何正确 return MATCH
查询中的数据 - 撇号仍然存在同样的问题,不确定是否有更多匹配查询不喜欢的字符.
SQlite fts4 虚拟表不处理标点符号,它们只是被 space 代替...
https://www.sqlite.org/fts3.html#tokenizer
所以我所做的只是声明 tokenchars:
"tokenize=unicode61" + " \"" +"tokenchars=.,/?!:;\"
您的实际搜索字符串也必须用引号引起来 - MATCH '",*"'
虽然它不处理引号....