Avg Function (Reporting Services)

Returns the average of all non-null numeric values specified by the expression, evaluated in the given scope.

Avg(expression, scope, recursive)


(Float) The expression on which to perform the aggregation. The expression cannot contain aggregate functions.


(String) Optional. The name of a dataset, group, or data region that contains the report items to which to apply the aggregate function. If scope is not specified, the current scope is used. For more information, see Using Built-in Report and Aggregate Functions in Expressions (Reporting Services) and Calculating Totals and Other Aggregates (Reporting Services).


(Enumerated Type) Optional. Simple (default) or RdlRecursive. Specifies whether to perform the aggregation recursively. For more information, see Creating Recursive Hierarchy Groups (Reporting Services).

Returns a Decimal for decimal expressions and a Double for all other expressions.

The set of data specified in the expression must have the same data type. To convert data that has multiple numeric data types to the same data type, use conversion functions like CInt, CDbl or CDec. For more information, see Type Conversion Functions.

The value of scope cannot be an expression and must refer to the current scope or a containing scope.

The following two code examples provide an average of all values in the Cost field contained in a dataset named Inventory.

=Avg(Fields!Cost.Value, "Inventory") 
=Avg (CDbl(Fields!Cost.Value), "Inventory")

Community Additions