SUM (MDX)
セットのすべての要素にわたって、指定された式 (または現在のメジャー) の合計を返します。
返りタイプ
この関数は、数値を返します。
構文および詳細
SUM(set_expression, optional_numeric_expression)
以下は、この指定の説明です。
-
set_expression は、セットに対して評価される式です。このセットは通常、メンバまたはタプルのセットです。
-
optional_numeric_expression は、セット要素ごとにこの関数が評価する数値式です。
通常、この式の形式は、[MEASURES].[measure_name] です。
数値式を指定しない場合、システムは現在の結果セルで使用されるメジャーを使用します。例えば、0 軸で使用されたメジャーまたは WHERE 節で指定されたメジャーです (これらがある場合)。クエリ自体がメジャーを指定しない場合は、ファクト・テーブル内のレコードをカウントする %COUNT が代わりに使用されます。
この関数は、セットの各要素に対して数値を評価し、それらの値の合計を返します。
例
まず、以下のクエリは、aged.decade レベルのメンバに関する、3 つのメジャーの値を示します。
SELECT {MEASURES.[%COUNT],MEASURES.[encounter count],MEASURES.[avg test score]} ON 0,
birthd.decade.MEMBERS ON 1 FROM patients
Patient Count Encounter Count Avg Test Score
1 1910s 80 5,359 75.17
2 1920s 227 12,910 74.20
3 1930s 567 33,211 74.67
4 1940s 724 38,420 73.39
5 1950s 1,079 46,883 73.72
6 1960s 1,475 57,814 74.16
7 1970s 1,549 49,794 74.35
8 1980s 1,333 35,919 74.13
9 1990s 1,426 29,219 74.79
10 2000s 1,406 20,072 74.95
11 2010s 134 1,346 73.55
次に、以下のクエリは、このレベルのメンバに関する、これらのメジャーの合計を示します。
SELECT {MEASURES.[%COUNT],MEASURES.[encounter count],MEASURES.[avg test score]} ON 0,
SUM(birthd.decade.MEMBERS) ON 1 FROM patients
Patient Count Encounter Count Avg Test Score
SUM 10,000 330,947 817.08
ここで、それぞれの値は、上記クエリの列内の値の合計です。例えば、Patient Count 値は、上記クエリの Patient Count 値の合計です。Avg Test Score 値は、平均テスト・スコアの合計で、有用な値になることはあまりないと思われます。
別の例では、SUM の 2 番目の引数を使用します。
SELECT SUM(birthd.decade.MEMBERS, MEASURES.[%COUNT]) ON 0 FROM patients
SUM
10,000
追加の類似例は、"AVG" を参照してください。