Sum(MDX)

返回在指定集合上计算的数值表达式的和。

Syntax

  
Sum( Set_Expression [ , Numeric_Expression ] )  

Arguments

Set_Expression
有效的多维表达式 (MDX) 集表达式。

Numeric_Expression
一个有效的数值表达式,通常是多维表达式(MDX)表达式,表示返回一个数字的单元坐标。

Remarks

如果指定了一个数值表达式,则在集合上对指定的数值表达式进行求值,然后求和。 如果未指定数值表达式,则在当前成员的上下文中对指定集合进行求值,然后进行求和。 如果将SUM函数应用于非数值表达式,结果则未定义。

注释

分析服务在计算一组数字和时忽略空算。

示例

以下示例返回了2001年和2002年所有产品类别属性层级的经销商销售额总和。

WITH MEMBER Measures.x AS SUM  
   ( { [Date].[Calendar Year].&[2001]  
         , [Date].[Calendar Year].&[2002] }  
      , [Measures].[Reseller Sales Amount]  
    )  
SELECT Measures.x ON 0  
,[Product].[Category].Members ON 1  
FROM [Adventure Works]  

以下示例返回了2002年7月至7月20日互联网销售的当月至今运费总和。

WITH MEMBER Measures.x AS SUM   
   (  
      MTD([Date].[Calendar].[Date].[July 20, 2002])  
     , [Measures].[Internet Freight Cost]  
     )  
SELECT Measures.x ON 0  
FROM [Adventure Works]  

以下示例使用WITH MEMBER关键词和SUM函数,在度量维度中定义了一个计算出的成员,该维度包含加拿大和美国成员国属性层级在地理维度中经销商销售金额度量的总和。

WITH MEMBER Measures.NorthAmerica AS SUM   
      (  
         {[Geography].[Country].&[Canada]  
            , [Geography].[Country].&[United States]}  
       ,[Measures].[Reseller Sales Amount]  
      )  
SELECT {[Measures].[NorthAmerica]} ON 0,  
[Product].[Category].members ON 1  
FROM [Adventure Works]  

通常, SUM 函数与 CURRENTMEMBER 函数或类似 YTD 的函数一起使用,后者返回的集合会根据层级中的当前成员而变化。 例如,以下查询返回了从日历年开始到行轴显示日期的所有日期的互联网销售金额衡量总和:

WITH MEMBER MEASURES.YTDSUM AS  
SUM(YTD(), [Measures].[Internet Sales Amount])  
SELECT {[Measures].[Internet Sales Amount], MEASURES.YTDSUM} ON 0,  
[Date].[Calendar].MEMBERS ON 1  
FROM [Adventure Works]