Aggregate (многомерные выражения)
Возвращает значение, вычисленное статистической обработкой ячеек, возвращаемых выражением набора. Если числовое выражение отсутствует, функция статистически обрабатывает каждую меру в контексте текущего запроса, используя статистический оператор, заданный для каждой меры. Если числовое выражение предоставлено, эта функция сначала вычисляет, затем суммирует числовое выражение для каждой ячейки в заданном наборе.
Синтаксис
Aggregate(Set_Expression [ ,Numeric_Expression ])
Аргументы
Set_Expression
Допустимое многомерное выражение, возвращающее набор.
Numeric_Expression
Допустимое числовое выражение (обычно многомерное выражение координат ячейки), возвращающее число.
Замечания
Если задан набор пустых кортежей или пустой набор, функция возвращает пустое значение.
В следующей таблице описывается поведение функции агрегата с разными агрегатными функциями.
Статистический оператор | Результат |
---|---|
Sum | Возвращает сумму значений в наборе. |
Count | Возвращает количество значений в наборе. |
Макс. | Возвращает максимальное значение в наборе. |
Мин. | Возвращает минимальное значение в наборе. |
Полуаддитивные статистические функции | Вычисляет полуаддитивные статистические функции над набором после проецирования формы на ось времени. |
Количество различных | Возвращает статистическое вычисление по данным из таблицы фактов, включаемым во вложенный куб, если ось среза содержит набор. Возвращает число различных объектов для каждого элемента набора. Результат зависит от безопасности ячеек, которые будут обрабатываться, но не от безопасности ячеек, которые требуются для вычисления. Безопасность ячейки в наборе создает ошибку, безопасность ячейки уровнем ниже гранулярности заданного набора не учитывается. Вычисления над набором вызывают ошибку. Вычисления со степенью гранулярности ниже гранулярности набора не учитываются. Счетчик различных объектов в наборе, включающий в себя элемент и один или более его дочерних объектов, возвращает счетчик различных фактов, использовавшихся в дочернем элементе. |
Атрибуты, которые нельзя вычислять | Возвращает сумму значений. |
Смешанные статистические функции | Не поддерживаются, вызывают ошибку. |
Унарные операторы | Не учитываются; значения суммируются. |
Рассчитанные меры | Задается порядок вычисления для применения вычисляемой меры. |
Вычисляемые элементы | Используются обычные правила, приоритет у последнего порядка вычисления. |
Задания | Назначения обрабатываются статистически соответственно статистической функции обработки мер. Если функция статистической обработки мер является счетчиком различных объектов, назначение суммируется. |
Примеры
В следующем примере возвращается сумма Measures.[Order Quantity]
элемента, агрегированная за первые восемь месяцев календарного года 2003 года, содержащихся в Date
измерении, из куба Adventure Works .
WITH MEMBER [Date].[Calendar].[First8Months2003] AS
Aggregate(
PeriodsToDate(
[Date].[Calendar].[Calendar Year],
[Date].[Calendar].[Month].[August 2003]
)
)
SELECT
[Date].[Calendar].[First8Months2003] ON COLUMNS,
[Product].[Category].Children ON ROWS
FROM
[Adventure Works]
WHERE
[Measures].[Order Quantity]
В следующем примере выполняются статистические вычисления за первые два месяца второго полугодия 2003 календарного года.
WITH MEMBER [Date].[Calendar].[First2MonthsSecondSemester2003] AS
Aggregate(
PeriodsToDate(
[Date].[Calendar].[Calendar Semester],
[Date].[Calendar].[Month].[August 2003]
)
)
SELECT
[Date].[Calendar].[First2MonthsSecondSemester2003] ON COLUMNS,
[Product].[Category].Children ON ROWS
FROM
[Adventure Works]
WHERE
[Measures].[Order Quantity]
В следующем примере возвращается количество посредников, продажи которых снизились по сравнению с предыдущим периодом, на основании выбранных пользователем значений элемента State-Province, вычисленных с помощью агрегатной функции. Функции Hierarchize и DrillDownLevel используются для возврата значений для снижения продаж для категорий продуктов в измерении Product.
WITH MEMBER Measures.[Declining Reseller Sales] AS
Count(
Filter(
Existing(Reseller.Reseller.Reseller),
[Measures].[Reseller Sales Amount] < ([Measures].[Reseller Sales Amount],
[Date].Calendar.PrevMember)
)
)
MEMBER [Geography].[State-Province].x AS
Aggregate (
{[Geography].[State-Province].&[WA]&[US],
[Geography].[State-Province].&[OR]&[US] }
)
SELECT NON EMPTY Hierarchize (
AddCalculatedMembers (
{DrillDownLevel({[Product].[All Products]})}
)
)
DIMENSION PROPERTIES PARENT_UNIQUE_NAME ON COLUMNS
FROM [Adventure Works]
WHERE ([Geography].[State-Province].x,
[Date].[Calendar].[Calendar Quarter].&[2003]&[4],
[Measures].[Declining Reseller Sales])
См. также
PeriodsToDate (многомерные выражения)
Дочерние объекты (многомерные выражения)
Иерархия (многомерные выражения)
Count (Set) (многомерные выражения)
Фильтр (многомерные выражения)
AddCalculatedMembers (многомерные выражения)
DrilldownLevel (многомерные выражения)
Свойства (многомерные выражения)
PrevMember (многомерные выражения)
Справочник по функции многомерных выражений (многомерные выражения)