Sum (многомерные выражения)
Возвращает сумму числового выражения, вычисленную по указанному набору.
Синтаксис
Sum( Set_Expression [ , Numeric_Expression ] )
Аргументы
Set_Expression
Допустимое многомерное выражение набора.Numeric_Expression
Допустимое числовое выражение (обычно многомерное выражение координат ячейки, возвращающее число).
Замечания
Если числовое выражение указано, его значение вычисляется для всех элементов набора, затем эти значения суммируются. Если числовое выражение не указано, вычисления выполняются в текущем контексте элементов, затем значения суммируются. Если функция SUM применяется к нечисловому выражению, результат не определен.
Примечание |
---|
Службы Analysis Services пропускают значения NULL при вычислении суммы набора чисел. |
Примеры
В следующем примере возвращается сумма мер Reseller Sales Amounts для всех элементов в иерархии атрибута Product.Category в 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 года, до 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 используются для определения вычисляемого элемента в измерении Measures, который представляет собой сумму мер Reseller Sales Amount для элементов Canada и United States иерархии атрибута Country в измерении Geography.
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, возвращающими набор, различающийся в зависимости от текущего элемента иерархии. Например, приведенный ниже запрос возвращает сумму меры Internet Sales Amount для всех дат с начала календарного года до даты, отображенной по оси строк:
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]
См. также
Справочник
Справочник по функциям многомерных выражений (многомерные выражения)