我重新描述一下问题,查询的输入值格式为"123,124,111,266"查询分词时使用逗号","分词,对doc里面的某个字段进行过滤如:doc.content :"123,122&125,111",content字段里面也是按","分词,数据格式有单个数字和包含"&"的字符串,122&125这种格式数据的匹配要求是必须同时匹配到122和125才算,以此类推如果是122&125&133这种的话就比如同时匹配到122,125,133三个值才算匹配上,输入的查询值只有类似"123,124,111"这种形式的,不包含"&"符号,都是单数字格式,这种可以通过什么方式来解决过滤问题,就是例如我输入查询的值"123,124,111,266",需要匹配出来"123,333,222","123&124,234","123&124&111,126"这些doc都要匹配到,因为每个doc的过滤匹配规则都不一样?通过怎样的方式可以实现,自定义脚本?自定义插件??
6 个回复
zhangyufu - 学习使我快乐
赞同来自:
kennywu76 - Wood
赞同来自:
https://www.elastic.co/guide/e ... .html
实现方法上,可以在索引content字段的同时,对其内容做解析,生成es query,并索引到一个叫做content.query的字段,类型是percolator。 查询的时候用percolator,显示结果用content即可。
shellmeng
赞同来自:
laoyang360 - 《一本书讲透Elasticsearch》作者,Elastic认证工程师 [死磕Elasitcsearch]知识星球地址:http://t.cn/RmwM3N9;微信公众号:铭毅天下; 博客:https://elastic.blog.csdn.net
赞同来自:
xupengrun - 90后
赞同来自:
http://www.jianshu.com/p/a0a168585e3d
xinfanwang
赞同来自: