gpt4 book ai didi

Elasticsearch 查询错误 - [或] 查询格式错误,查询名称后没有 start_object

转载 作者:行者123 更新时间:2023-12-02 22:45:47 24 4
gpt4 key购买 nike

有人可以解释一下这个查询有什么问题吗?我需要将此生成的查询从 Elasticsearch 2 转换为 Elasticsearch 6。在 ES2 中,此查询运行良好,但在 ES6 中,它会抛出一个错误:[或]查询格式错误,查询名称后没有 start_object。我迷失在其中。 OR 是必要的,因为可能有比这个更多的条件。

{
"query": {
"bool": {
"filter": {
"or": [
{
"nested": {
"path": "zalozcovia",
"query": {
"bool": {
"filter": [
{
"match": {
"zalozcovia.meno": "\u013dubo\u0161"
}
},
{
"match": {
"zalozcovia.priezvisko": "Majgot"
}
},
{
"match": {
"zalozcovia.mesto": "Trnava"
}
}
]
}
}
}
}
]
}
}
},
"size": 20,
"sort": [
{
"rok": "desc"
},
{
"cislo": "desc"
}
]
}

谢谢。

最佳答案

在 ES6 中,据我所知没有“OR”查询( https://www.elastic.co/guide/en/elasticsearch/reference/6.4/query-dsl-or-query.html )。您应该使用 bool 查询并在那里使用“应该”部分( https://www.elastic.co/guide/en/elasticsearch/reference/6.4/query-dsl-bool-query.html )。

{
"query": {
"bool": {
"filter": [{
"bool": {
"should": [{
"nested": {
"path": "zalozcovia",
"query": {
"bool": {
"filter": [{
"match": {
"zalozcovia.meno": "\u013dubo\u0161"
}
},
{
"match": {
"zalozcovia.priezvisko": "Majgot"
}
},
{
"match": {
"zalozcovia.mesto": "Trnava"
}
}
]
}
}
}
}]
}
}]
}
},
"size": 20,
"sort": [{
"rok": "desc"
},
{
"cislo": "desc"
}
]
}

关于Elasticsearch 查询错误 - [或] 查询格式错误,查询名称后没有 start_object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54948662/

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