在这里,您可以在ES上看到文档的一小部分。在详细信息数组中,可能有许多具有不同ID和值的不同对象,我必须创建查询以查找没有ID为“SR_Middle_Name”或ID为“SR_Middle_Name”和值“Aron”的所有文档
"details":[
{
"id":"SR_Name",
"value":"Elvis"
},
{
"id":"SR_Middle_Name",
"value":"Aron"
}
]
最佳答案
您要查询的对象是一个嵌套对象。首先,请确保为嵌套对象提供正确的索引映射。之后,您可以对此进行嵌套查询。
例如-
GET /_search
{
"query": {
"nested" : {
"path" : "details",
"query" : {
"bool" : {
"must" : [
{ "match_not" : {"details.id" : "SR_Middle_Name"} },
]
}
}
}
}
}
关于elasticsearch - Elasticsearch:查找在数组中没有匹配某些值的嵌套对象的文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49812331/