gpt4 book ai didi

elasticsearch - minimum_should_match 与嵌套对象

转载 作者:行者123 更新时间:2023-11-29 02:53:33 25 4
gpt4 key购买 nike

我在 minimum should match terms 查询中遇到了一些问题。

在我的文档中,我有以下 people 嵌套对象的映射

"people": {
"type": "nested",
"properties": {
"name": {
"type": "string",
"index": "not_analyzed"
}
}
}

我正在尝试使用 minimum_should_match 嵌套查询。此代码位于嵌套范围内:

"bool": {
"should": [
{
"terms": {
"people.name": [
"Anna",
"Mark",
"Joe"
],
"minimum_should_match": "100%",
"boost": 3
}
}
]
}

即使具有这三个名称的文档在我的索引中,我也没有结果。

问题是否与人员数据的嵌套结构有关?我希望对具有较高名称匹配的文档获得高分。

我已经尝试过 "execution": "or" 我得到了

QueryParsingException[[my_db] [terms] query does not support [execution]

我找到的唯一解决方案是在 should 范围内用不同的术语语句分隔每个名称。

这会影响查询的复杂度吗?有时我必须查找包含 30 个名称的文档。

最佳答案

试试这个:

"query": {
"bool": {
"should": [
{"nested":
{"path": "people",
"query": {
"terms" : {
"people.name" :["Anna", "Joe"]
}
}
}
}
]
}
}

关于elasticsearch - minimum_should_match 与嵌套对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32647441/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com