Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

AGGREGATE

メジャーの集約ロジックに従い、セットのすべての要素にわたって、指定されたメジャー (または現在のメジャー) の集約値を返します。

返りタイプ

この関数は、数値を返します。

構文および詳細

AGGREGATE(set_expression, optional_numeric_expression)

以下は、この指定の説明です。

  • set_expression は、セットに対して評価される式です。このセットは通常、メンバまたはタプルのセットです。

  • optional_numeric_expression は、セット要素ごとにこの関数が評価する数値式です。

    通常、この式の形式は、[MEASURES].[measure_name] です。

    数値式を指定しない場合、DeepSee では、現在の結果セルで使用されるメジャーが使用されます。例えば、0 軸で使用されたメジャーまたは WHERE 節で指定されたメジャーです (これらがある場合)。クエリ自体がメジャーを指定しない場合、DeepSee では、ファクト・テーブル内のレコードをカウントする %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

次に、以下のクエリは、AGGREGATE を使用して、メンバのこのセットにわたって、これらのメジャーの集約値を検索します。

SELECT {MEASURES.[%COUNT],MEASURES.[encounter count],MEASURES.[avg test score]} ON 0, 
AGGREGATE(birthd.decade.MEMBERS) ON 1 FROM patients
                     Patient Count    Encounter Count     Avg Test Score
AGGREGATE                    10,000            330,947              74.28

以下のクエリは、AGGREGATE 関数の 2 番目の引数を使用します。

SELECT AGGREGATE(birthd.decade.MEMBERS, MEASURES.[%COUNT]) ON 0 FROM patients
                                 AGGREGATE
                                     10,000

追加の類似例は、"AVG" を参照してください。"DeepSee モデルの定義" の “計算メンバの定義” の例も参照してください。

関連項目

FeedbackOpens in a new tab