aggregate_max

The aggregate_max (str agg_name, str fieldname) returns the max of the field "fieldname" over all documents that passed the relevant filtering.

The aggregation result will be stored under the query results objects, under a key named "agg_name".

Input

  • agg_name(str) - Specifies the key that will be used to store the aggregation result under the query result.

  • fieldname(str) - The name of the field to aggregate. params[fieldname]must be of type float or int.

Example:

def score_function_recommendation( params, doc):
      score = 0.0 
      if match('genres'): 
         aggregate_max ("min_budget_genres", "rating")      
         if match('languages'):
             aggregate_max ("min_budget", "rating")
         score = 1
     return score

In the above example, the query results will include a key name 'aggregations', containing the following sub keys:

  • "max_budget_genres" - the maximum of the field “budget” over all candidates that passed the filter over genres.

  • "max_budget" - the maximum of the field “budget” over all candidates that passed the filters over genres and languages.

Last updated