一尘不染

如何在同一路径的多个嵌套子查询中返回多个内部匹配?

elasticsearch

当我对同一路径有多个嵌套子查询时,似乎结果将仅包括最后一个嵌套子查询的内部匹配结果。有没有一种方法可以返回多个嵌套子查询的所有内部匹配结果?

例如

{
    "query": {
        "bool: {
            "must": [{
                "nested": {
                    "query": {...},
                    "path": "path_a",
                    "inner_hits": {}
                }
            },{
                "nested": {
                    "query": {...},
                    "path": "path_a",
                    "inner_hits": {}
                }
            }]
        }
    }
}

阅读 226

收藏
2020-06-22

共1个答案

一尘不染

如果添加了独特的nameinner_hits,那么结果将基本包含地图你内心命中为您期望。

注意 :似乎内部匹配有时在中包含额外的查询名称(来自其他嵌套查询)matched_queries,因此可能需要进行一些后期处理

2020-06-22