avg<E extends num> method

Aggregation<(Expr<A>, Expr<B>, Expr<C>), (Expr<D>, Expr<double?>)> avg<E extends num>(
  1. Expr<E?> aggregateBuilder(
    1. Expr<A> a,
    2. Expr<B> b,
    3. Expr<C> c
    )
)

Add a AVG aggregate function to this Aggregation.

Returns an Aggregation that includes an AVG aggregate over the rows in each group. The AVG aggregate is applied to the Expr<num> created with aggregateBuilder.

If the expression Expr<num> built by aggregateBuilder evaluates to NULL it will not be included in the average. If all rows in a group evaluate to NULL, the AVG aggregate function will return NULL.

Warning

If you want NULL values to count in denominator of the average, use .orElseValue(0) to force a non-nullable expression.

Implementation

Aggregation<(Expr<A>, Expr<B>, Expr<C>), (Expr<D>, Expr<double?>)>
avg<E extends num>(
  Expr<E?> Function(Expr<A> a, Expr<B> b, Expr<C> c) aggregateBuilder,
) => _build(aggregateBuilder, AvgExpression._);