Sqlite 匹配查询中的SQLlite逗号转义
我有一个Sqlite 匹配查询中的SQLlite逗号转义,sqlite,android-sqlite,match,sql-like,Sqlite,Android Sqlite,Match,Sql Like,我有一个匹配查询,例如: select * from items where itemdesc MATCH (',') 它返回的数据是完全无意义的,包含分号、点等 但是,like查询返回正确的数据集 select * from items where itemdesc like ('%,%') 当我使用逗号时,如何正确返回匹配查询中的数据-相同的问题仍然存在,不确定匹配查询是否有更多不喜欢的字符。SQlite fts4虚拟表不处理标点符号,它们只是被空格替换 所以我所做的只是声明token
匹配
查询,例如:
select * from items where itemdesc MATCH (',')
它返回的数据是完全无意义的,包含分号、点等
但是,like
查询返回正确的数据集
select * from items where itemdesc like ('%,%')
当我使用逗号时,如何正确返回
匹配查询中的数据-相同的问题仍然存在,不确定匹配查询是否有更多不喜欢的字符。SQlite fts4虚拟表不处理标点符号,它们只是被空格替换
所以我所做的只是声明tokenchars:
"tokenize=unicode61" + " \"" +"tokenchars=.,/?!:;\\"
您的实际搜索字符串也必须用引号括起来-MATCH',*“
但是它不处理引号…是标准的还是全文搜索表?这是一个虚拟的表经过研究我发现匹配查询不喜欢非字母数字字符。。。所以我开始用空格代替非字母数字字符。。。。。工作,但希望它能正常工作。。。。