Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.

Children Aggregation

More info about children aggregation is in the official elasticsearch docs

A special single bucket aggregation that enables aggregating from buckets on parent document types to buckets on child documents.

Simple example

{
    "aggregations": {
        "agg_author_count": {
            "children": {
                "type": "answer"
            },
            "aggregations": {
                "agg_top_names": {
                    "terms": {
                        "field": "owner.display_name"
                    }
                }
            }
        }
    }
}

And now the query via DSL:

$termsAggregation = new TermsAggregation('top_names', 'owner.display_name');

$childrenAggregation = new ChildrenAggregation('author_count', 'answer');
$childrenAggregation->addAggregation($termsAggregation);

$search = new Search();
$search->addAggregation($childrenAggregation);

$queryArray = $search->toArray();