elastic search 里存在对象如下:Sku CarSpecs Id 101 Value 101001 Id 102 Value 102001 现在传入参数CarSpecs如下: Id 101 Value 101001 Id102 Value 102001 Id103
可以使用nested查询来实现该需求,具体查询语句如下:
{
"query": {
"nested": {
"path": "Sku.CarSpecs",
"query": {
"bool": {
"must": [
{
"match": {
"Sku.CarSpecs.Id": 101
}
},
{
"match": {
"Sku.CarSpecs.Value": 101001
}
}
]
}
}
}
}
}
其中,"path"指定了要查询的嵌套对象的路径,"query"中的"bool"表示同时满足多个条件,"must"中的两个"match"分别匹配CarSpecs中的Id和Value,满足所有条件的Sku对象即为查询结果。如果要查询多个CarSpecs对象,可以将"must"中的条件按照传入参数的数组进行循环匹配
原文地址: https://www.cveoy.top/t/topic/dJts 著作权归作者所有。请勿转载和采集!