集合式で返されるセルを集計して計算された数値を返します。 数値式が提供されていない場合、この関数は各測度ごとに指定されたデフォルトの集約演算子を用いて、現在のクエリコンテキスト内で各測度を集約します。 数値式が提供された場合、この関数はまず指定された集合内の各セルの数値式を評価し、その後合計します。
構文
Aggregate(Set_Expression [ ,Numeric_Expression ])
引数
Set_Expression
集合を返す有効な多次元表現(MDX)式。
Numeric_Expression
有効な数値式で、通常は数を返すセル座標の多次元表現(MDX)式です。
Remarks
空のタプルの集合や空集合が指定されている場合、この関数は空の値を返します。
以下の表は、 集約 関数が異なる集約関数でどのように振る舞うかを示しています。
| アグリゲーション・オペレーター | Result |
|---|---|
| 合計 | 集合上の価値の合計を返します。 |
| 数える | 集合上の値を返します。 |
| マックス | 集合上の最大値を返します。 |
| Min | 集合上の最小値を返します。 |
| 半加法集約関数 | 形状を時間軸に射影した後、集合上の半加法的挙動の計算を返します。 |
| 個別カウント | スライサー軸に集合が含まれている場合、サブキューブに寄与するデータ全体を横断して集計します。 集合の各メンバーごとに異なるカウントを返します。 結果は、計算に必要なセルのセキュリティではなく、集約されるセルのセキュリティに依存します。 セット上のセルセキュリティはエラーを発生させます。指定された集合の粒度未満のセルセキュリティは無視されます。 セット上の計算は誤差を生じます。 集合の粒度以下の計算は無視されます。 メンバーとその子を含む集合に対する異なるカウントは、子メンバーに寄与する事実をまたいで異なるカウントを返します。 |
| 集約できない属性 | 値の合計を返します。 |
| 混合集約関数 | サポートされておらず、エラーが出ます。 |
| 単項演算子 | 尊敬されていない;値は合計によって集計されます。 |
| 計算メジャー | 計算された測定値が適用されるように順序セットを解く。 |
| 計算されたメンバー | 通常のルールが適用され、最後の解く順序が優先されます。 |
| 課題 | 割り当ては測度集計関数に従って集計されます。 測度集約関数が異なるカウントの場合、割り当ては合計されます。 |
Examples
以下の例は、Adventure Worksキューブから2003年暦年の最初の8か月間に集計された、Date次元に含まれるMeasures.[Order Quantity]メンバーの合計を返します。
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年の暦年第2学期の最初の2か月間の集計です。
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]
以下の例は、Aggregate関数で評価されたユーザー選択 State-Province メンバーの価値に基づき、前期間に売上が減少したリセラーのカウントを返します。 HierarchizeおよびDrillDownLevel関数は、製品次元における製品カテゴリの売上減少の値を返すために使われます。
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])