Avg (MDX)

更新日期: 2006 年 12 月 12 日

对集求值,并返回该集中单元的非空值的平均值,此平均值是对该集中的度量值或某指定度量值求得的平均值。

语法

Avg( Set_Expression [ , Numeric_Expression ] )

参数

  • Set_Expression
    返回集的有效多维表达式 (MDX)
  • Numeric_Expression
    有效数值表达式,通常为返回数值的单元坐标的多维表达式 (MDX)。

备注

如果指定了一组空元组或一个空集,则 Avg 函数返回一个空值。

Avg 函数首先计算指定集中的所有单元值之和,然后将计算出的和除以该集中的非空单元数,从而计算出指定集单元中的非空值的平均值。

ms146067.note(zh-cn,SQL.90).gif注意:
计算一组数值的平均值时,Analysis Services 将忽略空值。

如果未指定特定数值表达式(通常为度量值),则 Avg 函数在当前查询上下文中计算每个度量值的平均值。如果指定了度量值,则 Avg 函数首先计算该集的度量值,然后对指定的度量值计算平均值。

注意   在计算成员语句中使用 CurrentMember 函数时,必须指定数值表达式,因为在这种查询上下文的当前坐标中不存在任何默认度量值。若要强制包含空单元,应用程序必须使用 CoalesceEmpty 函数,或指定一个有效的 Numeric_Expression 以提供零 (0) 作为空值。有关空单元的详细信息,请参阅 OLE DB 文档。

示例

下面的示例对指定集返回度量值的平均值。请注意,指定度量值可以是指定集的成员的默认度量值,也可以是指定的度量值。

WITH SET [NW Region] AS 
   {[Geography].[State-Province].[Washington]
   , [Geography].[State-Province].[Oregon]
   , [Geography].[State-Province].[Idaho]}
MEMBER [Geography].[Geography].[NW Region Avg] AS 
   AVG ([NW Region]
   --, [Measures].[Reseller Gross Profit Margin]
   )
SELECT [Date].[Calendar Year].[Calendar Year].Members ON 0
FROM [Adventure Works]
WHERE ([Geography].[Geography].[NW Region Avg])

以下示例从 Adventure Works 多维数据集中返回 Measures.[Gross Profit Margin] 度量值的日平均值,该值是根据 2003 会计年度中每个月的所有日期计算出的。Avg 函数从 [Ship Date].[Fiscal Time] 层次结构中每个月所包含的所有日期的集中计算平均值。

WITH MEMBER Measures.[Avg Gross Profit Margin] AS
   Avg(
      Descendants(
         [Ship Date].[Fiscal].CurrentMember, 
            [Ship Date].[Fiscal].[Day of Month]
      ), 
      Measures.[Gross Profit Margin]
   )
SELECT
   Measures.[Avg Gross Profit Margin] ON COLUMNS,
      [Ship Date].[Fiscal].[Month].Members ON ROWS
FROM
   [Adventure Works]
WHERE
   ([Ship Date].[Fiscal Year].[FY 2003])

以下示例将从 Adventure Works 多维数据集中返回 Measures.[Gross Profit Margin] 度量值的日平均值,该值是根据 2003 会计年度中每个半期的所有日期计算出来的。

WITH MEMBER Measures.[Avg Gross Profit Margin] AS
   Avg(
      Descendants(
         [Ship Date].[Fiscal].CurrentMember, 
            [Ship Date].[Fiscal].[Day of Month]
      ), 
      Measures.[Gross Profit Margin]
   )
SELECT
   Measures.[Avg Gross Profit Margin] ON COLUMNS,
      [Ship Date].[Fiscal].[Fiscal Year].[FY 2003].Children ON ROWS
FROM
   [Adventure Works]

请参阅

参考

MDX 函数参考 (MDX)

帮助和信息

获取 SQL Server 2005 帮助

更改历史记录

发布日期 历史记录

2006 年 12 月 12 日

更改的内容:
  • 阐明了空值的影响。
  • 添加了另一个示例。
  • 修复了损坏的示例

2006 年 7 月 17 日

更改的内容:
  • 更新了语法和参数,以使表述更加清晰。
  • 添加了更新的示例。