BOTTOMCOUNT
返りタイプ
構文および詳細
BOTTOMCOUNT(set_expression, element_count, optional_ordering_expression)
以下は、この指定の説明です。
-
set_expression は、メンバまたはタプルのセットに対して評価される式です。
-
element_count は整数リテラルです。
この関数は、この引数を使用して、サブセットで返す要素の数を決定します。この引数が要素数よりも大きい場合、すべての要素が返されます。
-
optional_ordering_expression は、セット要素の順序を決定する数値式です。
通常、この式の形式は、[MEASURES].[measure_name] です。
この関数は、セットの各要素に対してこの式を評価し、セットの要素をこの値の昇順で並べ替えます。階層があればすべて無視されます。
この引数を省略すると、この関数はセット要素の現在の順序を使用します (そして、この関数は TAIL 関数のように動作します)。
例
まず、以下のクエリ、およびそれが返す結果について考えてみます。
SELECT MEASURES.[%COUNT] ON 0,
BOTTOMCOUNT(birthd.decade.MEMBERS, 100, MEASURES.[%COUNT]) ON 1
FROM patients
Patient Count
1 1910s 71
2 2010s 155
3 1920s 223
4 1930s 572
5 1940s 683
6 1950s 1,030
7 1980s 1,400
8 1990s 1,413
9 2000s 1,433
10 1960s 1,500
11 1970s 1,520
count_expression がメンバ数よりも大きいため、すべてのメンバが返されます。メンバは、%COUNT メジャーの値の昇順で並べ替えられます。
次に、類似のクエリについて考えてみます。こちらでは、使用する count_expression が 3 に等しくなっています。
SELECT MEASURES.[%COUNT] ON 0,
BOTTOMCOUNT(birthd.decade.MEMBERS, 3, MEASURES.[%COUNT]) ON 1
FROM patients
Patient Count
1 1910s 71
2 2010s 155
3 1920s 223
このクエリは、セットの中で、値の低い方からメンバを 3 つ選択します。