機械翻訳について

Sum

セット内のタプルの値の合計を返します。

構文

Sum ( set [,numeric_value_expression ] )

パラメータ

set

集計するタプルを含むセット。 空の場合、戻り値は#MISSINGです。

numeric_value_expression

オプション 値を返す式。 通常、Measuresディメンションのスライスに集計を制限するために使用されます(「MDX文法ルール」を参照)。 次の例では、[Measures].[Total Expenses]は、Sum関数に指定された数値式です。

ノート

集約ストレージ・データベースでこの関数のパフォーマンスを最適化するには、次の種類のセットを問合せに含めます:

  • 指定されたセット内で使用される、またはこの関数の引数として使用される、次のいずれかの関数: Intersect, CurrentMember, Distinct, CrossJoin, PeriodsToDate.

  • 検索条件が次のように定義されたFilter関数: dimensionName.CurrentMemberはmemberNameです。

  • IIF関数。前述の基準を満たすtrue_partおよびfalse_partが設定されます。

  • 他の関数(メンバーなど)を使用すると、最適化が無効になります。

  • 最適なパフォーマンスを得るには、別のパラメータであるnumeric_value_expressionを含める必要があります。

問合せのパフォーマンスを最適化するには、式のキャッシュ・サイズを大きくする必要があります。 次のようなエラー・メッセージが表示された場合は、MAXFORMULACACHESIZE構成設定を適宜調整します:

Not enough memory for formula execution. Set MAXFORMULACACHESIZE configuration parameter to [1072]KB and try again.

setのタプルごとに、そのタプルのコンテキストで数値式が評価され、結果の値が合計されます。

次のいずれかに該当する場合、Sumの戻り値は#MISSINGです:

  • 入力セットが空です。

  • すべてのタプル評価で#MISSING値が生成されます。

WITH MEMBER [Market].[Sum Expense for Main States]
AS
 'Sum
 ({[Market].[California], [Market].[Colorado],
   [Market].[Texas], [Market].[Illinois],
   [Market].[Ohio], [Market].[New York],
   [Market].[Massachusetts], [Market].[Florida]}, 
  [Measures].[Total Expenses]
  )' 
SELECT
 {[Measures].[Total Expenses]}
ON COLUMNS, 
  {UDA([Market], "Major Market"),
  [Market].[Sum Expense for Main States]}
ON ROWS
FROM 
 Sample.Basic
WHERE ([Scenario].[Actual])

グリッドを返します:

表4-129 MDXからの出力グリッドの例

(軸) 費用合計
ニューヨーク 8914
マサチューセッツ 3412
Florida 5564
東部 25310
California 11737
テキサス 4041
Illinois 6900
Ohio 5175
Colorado 6131
中部 34864
主要都道府県の費用合計 51874

関連項目

Aggregate