报表生成器函数 - 分页报表中的 Avg 函数(报表生成器)

适用于: Microsoft 报表生成器 (SSRS) Power BI 报表生成器 SQL Server Data Tools 中的报表生成器

在分页报表中,返回在给定范围中计算的、由表达式指定的所有非 Null 数值的平均值。

注意

在 SQL Server Data Tools 中,你可以在 Microsoft 报表生成器、Power BI 报表生成器和报表设计器中创建和修改分页报表定义 (.rdl) 文件。

语法

  
Avg(expression, scope, recursive)  

参数

expression
(Float) 要对其执行聚合的表达式。

作用域
(String) 可选。 包含要对其应用聚合函数的报表项的数据集、组或数据区域的名称。 如果未指定 scope ,则使用当前作用域。

递归
(Enumerated Type) 可选。 Simple (默认)或 RdlRecursive。 指定是否以递归方式执行聚合。

返回类型

对于十进制表达式,返回 Decimal ;对于所有其他类型的表达式,返回 Double

备注

表达式中指定的数据集必须具有相同的数据类型。 若要将具有多个数值数据类型的数据转换为同一数据类型,请使用类似 CIntCDblCDec的转换函数。 有关详细信息,请参阅 Type Conversion Functions(类型转换函数)。

scope 的值必须是字符串常量,不能是表达式。 对于外部聚合或未指定其他聚合的聚合, scope 必须引用当前作用域或包含作用域。 对于聚合的聚合,嵌套聚合可以指定子作用域。

Expression 可以包含对嵌套聚合函数的调用,但具有以下例外和条件:

  • 嵌套聚合的Scope 必须与外部聚合的作用域相同,或者包含在外部聚合的作用域中。 对于表达式中的所有非重复作用域,一个作用域必须相对所有其他作用域处于子关系中。

  • 嵌套聚合的Scope 不能为数据集的名称。

  • Expression 不得包含 FirstLastPreviousRunningValue 函数。

  • Expression 不得包含用于指定 recursive的嵌套聚合。

有关详细信息,请参阅聚合函数引用(报表生成器和 SSRS)总计、聚合和内置集合的表达式作用域(报表生成器和 SSRS)

有关递归聚合的详细信息,请参阅创建递归层次结构组(报表生成器和 SSRS)

示例

下面的两个代码示例提供了名为 Cost 的数据集所包含的 Inventory字段中所有值的平均值。

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