elasticsearch - Filtering global aggregation in Elastica -
i have elastic query built ruflin/elastica, global aggregation. possible somehow add filters it, separate main query.
it looks so:
$query = new query($boolquery); $categoryaggregation = new terms('category_ids'); $categoryaggregation->setfield('category_ids'); $categoryaggregation->setsize(0); $manufactureraggregation = new terms('manufacturer_ids'); $manufactureraggregation->setfield('manufacturer_id'); $manufactureraggregation->setsize(0); $globalaggregation = new globalaggregation('global'); $globalaggregation->addaggregation($categoryaggregation); $globalaggregation->addaggregation($manufactureraggregation); $query->addaggregation($globalaggregation); i add custom filters manufacturer_ids , category_ids aggregations. @ moment aggregated documents. there way via elastica api, applies filtering it?
i found myself through trial , error, goes following:
$categoryaggregation = new terms('category_ids'); $categoryaggregation->setfield('category_ids'); $categoryaggregation->setsize(0); $filter = new filter('category_ids', $merchantidquery); $filter->addaggregation($categoryaggregation); $globalaggregation = new globalaggregation('global'); $globalaggregation->addaggregation($filter);
Comments
Post a Comment