グループ化フィールド
集計式用にデータをグループ化する方法を定義する場合は、グループ化フィールドを使用します。グループ化フィールドは、[プロパティ]パネルの[Group By]タブで設定します。
集計式に対してグループを定義するには、アグリゲータトランスフォーメーションで適切な入力フィールド、入出力フィールド、出力フィールドを選択します。複数のグループ化フィールドを選択して、一意のグループの組み合わせごとに新しいグループを作成することができます。これにより、データ統合ではグループごとに定義済みの集計が実行されます。
値のグループ化を行うと、データ統合ではグループごとに1つの行が生成されます。値のグループ化を行わない場合、データ統合ではすべての入力行に対して1つの行が返されます。
アグリゲータトランスフォーメーションが詳細クラスタで実行され、入力フィールドと出力フィールドがフィールドごとにグループ化されていない場合、このトランスフォーメーションでは各グループの最後の行が集計結果とともに返されない可能性があります。
アグリゲータトランスフォーメーションで複数のグループ化フィールドを選択した場合、データ統合ではフィールドの順序に基づいてグループ化の順序が決定されます。グループの順序は集計結果に影響を及ぼす場合があるため、適切にグループ化が実行されるようにグループ化フィールドを並べ替えます。また、グループのフィールドを選択した後にフィールド順を変更することもできます。
例えば、TOTAL_QTYおよびTOTAL_PRICEという集計フィールドを作成して、それぞれの項目の合計数と合計価格をストアごとに保存するとします。フィールドごとに次の式を定義します。
- •TOTAL_QTY: SUM (QTY)
- •TOTAL_PRICE: SUM (QTY*PRICE)
グループ化フィールドとしてSTORE_IDとITEMを定義します。
入力行には、次のようなデータが含まれます。
STORE_ID | ITEM | QTY | PRICE |
---|
101 | 'battery' | 3 | 2.99 |
101 | 'battery' | 1 | 3.19 |
101 | 'battery' | 2 | 2.59 |
101 | 'AAA' | 2 | 2.45 |
201 | 'battery' | 1 | 1.99 |
201 | 'battery' | 4 | 1.59 |
301 | 'battery' | 1 | 2.45 |
データ統合は、次の一意のグループに対して集計計算を実行します。
STORE_ID | ITEM |
---|
101 | 'battery' |
101 | 'AAA' |
201 | 'battery' |
301 | 'battery' |
データ統合は、ストアID、項目名、ストアごとの各項目の合計数、およびストアごとの各項目の合計価格を返します。
STORE_ID | ITEM | TOTAL_QTY | TOTAL_PRICE |
---|
101 | 'AAA' | 2 | 4.90 |
101 | 'battery' | 6 | 17.34 |
201 | 'battery' | 5 | 8.35 |
301 | 'battery' | 1 | 2.45 |