原英文版地址: https://www.elastic.co/guide/en/elasticsearch/reference/7.7/query-dsl-span-multi-term-query.html, 原文档版权归 www.elastic.co 所有
本地英文版地址: ../en/query-dsl-span-multi-term-query.html
本地英文版地址: ../en/query-dsl-span-multi-term-query.html
重要: 此版本不会发布额外的bug修复或文档更新。最新信息请参考 当前版本文档。
span_multi
查询允许你将多词项查询
(通配符 wildcard、模糊 fuzzy、前缀 prefix、范围 range 或 正则 regexp 查询之一) 包装为 span 查询
,因此它可以嵌套。
示例:
GET /_search { "query": { "span_multi":{ "match":{ "prefix":{"user":{"value":"ki"}} } } } }
增强(boost)也可以与查询相关联:
GET /_search { "query": { "span_multi":{ "match":{ "prefix":{"user":{"value":"ki","boost":1.08}} } } } }
如果匹配查询的词项的数量超过 bool 查询限制(默认为1024),span_multi
查询将会遇到太多子句失败。
为了避免无限制的扩展,可以将多项查询的 重写方法 设置为 top_terms_*
重写。
或者,如果仅对 prefix
查询使用 span_multi
,则可以激活 text
字段的 index_prefixes
字段选项。
这将把字段上的任何前缀查询重写为与索引前缀匹配的单个词项查询。