有些人像这样绘制数据,
"item":[
{"name": "ABC" }
{"brand": "edf" },
{"quantity": 12 }
]
我试着这样过滤:
"filter":
{"term": {"item.brand": "edf}}
结果是:
"hits": {
"total": {
"value": 0,
"relation": "eq"
},
我知道 name
, brand
以及 quantity
被放进一个 []
主要问题:我们能在不改变Map方式的情况下过滤它吗?
实际案例:
"item": {
"categories": [
{"deleted_at": null,
"description": {
"en": "Bun ",
"vi": "Bánh Bao "
}
},
....
]
}
我的问题:
["filter":
{"nested": {"path":"item.categories",
"query":{
"term":{"item.categories.description.en":"Bun "}
}
}
}
]
出现以下错误:
"failed to create query: [nested] nested object under path [item.categories] is not of nested type",
1条答案
按热度按时间fzsnzjdm1#
可能是这样的
item
是嵌套类型,如果是这种情况,则需要使用nested
这样查询:更新:
根据你得到的错误,
item.categories
没有嵌套,因此您的初始查询是正确的。但是,您应该使用match
而不是term
,如下所示: