首页 > 解决方案 > 如何从祖父母那里获得elasticsearch 7.10中的所有孙子

问题描述

我在弹性搜索中有一个关系,其中 A 是父级,B 是 A 的子级,而 C 是 B 的子级。

A->B->C。

在插入时,关系是相同的,B 有 A 作为父级,而在插入孙子 B 时,B 是父级。

现在,当我想使用以下查询获取所有孙子时,它返回 None。

{
    "query": {
        "has_parent": {
            "parent_type": "A",
            "query": {
                "has_parent": {
                    "parent_type": "B",
                    "query": {
                        "match_all": {}
                    }
                }
            }
        }
    }
}

问题是什么?感谢您在存储任何帮助时缺少的东西。

标签: elasticsearchelasticsearch-7

解决方案


我已经使用以下查询实现了它。

{
    "query": {
        "has_parent": {
            "parent_type": "B",
            "query": {
                "has_parent": {
                    "parent_type": "A",
                    "query": {
                        "match_all": {}
                    }
                }
            }
        }
    }
}

基本上,父级应该嵌套而不是子级。


推荐阅读