es 先查询index1根据查询结果再查询index2 然后分页
时间: 2023-07-07 08:10:32 浏览: 73
Python-ElasticSearch搜索查询的讲解
可以使用 `terms` 查询和 `nested` 查询来实现先查询 `index1`,再根据查询结果查询 `index2`,最后通过 `from` 和 `size` 进行分页。以下是一个示例请求:
```
POST /index1,index2/_search
{
"from": 0,
"size": 10,
"query": {
"bool": {
"must": [
{
"terms": {
"field1": [
"value1",
"value2"
]
}
}
]
}
},
"aggs": {
"index1_ids": {
"terms": {
"field": "_id",
"size": 10000
}
}
}
}
```
这个示例请求中,先在 `index1` 中查询 `field1` 包含 `value1` 或 `value2` 的文档,然后通过聚合查询获取这些文档的 `_id`。接着,使用 `nested` 查询在 `index2` 中查询这些 `_id` 相关联的文档,最后通过 `from` 和 `size` 分页显示结果。你可以根据自己的需求修改查询语句。
阅读全文