TOPSUM (MDX)
要素全体の合計に適用される切り捨て値を指定すると、セットを並べ替え、その値の高い方からサブセットを返します。
返りタイプ
構文および詳細
TOPSUM(set_expression, cutoff_value, ordering_expression)
-
set_expression は、メンバまたはタプルのセットに対して評価される式です。
-
cutoff_value は数値リテラルです。
この関数は、この引数を使用して、サブセットで返す要素の切り捨て値を決定します。
返されたサブセットのすべての要素に関して、ordering_expression の値の合計は、cutoff_value 以下になります。
-
ordering_expression は、セット・メンバの順序を決定する数値式です。
この関数は、セットの各要素に対してこの式を評価し、セットの要素をこの値の降順で並べ替えます。階層があればすべて無視されます。
例
まず、切り捨て値が大きく、すべてのメンバが含まれる例について考えてみます。
SELECT MEASURES.[%COUNT] ON 0,
TOPSUM(birthd.decade.MEMBERS, 10000, MEASURES.[%COUNT]) ON 1 FROM patients
Patient Count
1 1970s 1,520
2 1960s 1,500
3 2000s 1,433
4 1990s 1,413
5 1980s 1,400
6 1950s 1,030
7 1940s 683
8 1930s 572
9 1920s 223
10 2010s 155
11 1910s 71
次に、切り捨て値を 2500 に設定したバリエーションについて考えてみます。
SELECT MEASURES.[%COUNT] ON 0,
TOPSUM(birthd.decade.MEMBERS, 2500, MEASURES.[%COUNT]) ON 1 FROM patients
Patient Count
1970s 1,520