【发布时间】:2018-11-14 20:53:32
【问题描述】:
我有一个 Elasticsearch 查询,其中包含以下格式的“应该”子句。目的是通过单个请求搜索多个查询字符串:
[
{ match: { "name": { query: "Candied Apples" } } },
{ match: { "name": { query: "Canned Pears" } } }
]
根据https://www.elastic.co/guide/en/elasticsearch/guide/current/multi-query-strings.html ES 正在组合这些子句,因此名为“罐装苹果和梨”的文档的得分高于“罐装梨”,即使“罐装梨”与其中一个查询完全匹配字符串。有没有更好的方法来构造我的查询,以便单独评估每个子句?
明确地说,我希望在上面的搜索示例中返回一个名为“Canned Apples and Pears”的文档,但它的分数应该低于任何名为“Candied Apples”或“Canned”的文档梨”,因为它不完全匹配任何搜索子句。这意味着 100% 的 minimum_should_match 值不合适。
全面披露 - 我是 ES 新手!
【问题讨论】:
标签: elasticsearch