get_finer_aggregate_exprs_requirement

Function get_finer_aggregate_exprs_requirement 

Source
pub fn get_finer_aggregate_exprs_requirement(
    aggr_exprs: &mut [Arc<AggregateFunctionExpr>],
    group_by: &PhysicalGroupBy,
    eq_properties: &EquivalenceProperties,
    agg_mode: &AggregateMode,
) -> Result<Vec<PhysicalSortRequirement>>
Expand description

Gets the common requirement that satisfies all the aggregate expressions. When possible, chooses the requirement that is already satisfied by the equivalence properties.

§Parameters

  • aggr_exprs: A slice of AggregateFunctionExpr containing all the aggregate expressions.
  • group_by: A reference to a PhysicalGroupBy instance representing the physical GROUP BY expression.
  • eq_properties: A reference to an EquivalenceProperties instance representing equivalence properties for ordering.
  • agg_mode: A reference to an AggregateMode instance representing the mode of aggregation.

§Returns

A Result<Vec<PhysicalSortRequirement>> instance, which is the requirement that satisfies all the aggregate requirements. Returns an error in case of conflicting requirements.