我有一个名为'bundles'的嵌套对象,它通常包含多个对象。使用此查询,我可以成功查询bundle中对象的id,但是我无法编写可以查询多个id的查询。建议?
{
"query": {
"nested": {
"path": "bundles",
"query": {
"bool": {
"must": [
{
"match": {
"bundles.id": 43273
}
}
]
}
},
"inner_hits": {}
}
}
}
答案 0 :(得分:0)
也许你想要"应该"而不是"必须"在布尔过滤器中。例如:
{
"query": {
"nested": {
"path": "bundles",
"query": {
"bool": {
"should": [
{
"match": {
"bundles.id": 43273
},
{
"match": {
"bundles.id": 433373
}
}
]
}
}
}
}
}
如果字段可以完全匹配,您还可以使用术语查询。例如:
{
"query": {
"nested": {
"path": "bundles",
"query": {
"bool": {
"must": [
{
"terms": {
"bundles.id": [1140000000, 114]
}
}
]
}
}
}
}
}'