目次

Search

  1. はじめに
  2. Informatica Data Engineering Integrationについて
  3. マッピング
  4. マッピングの最適化
  5. ソース
  6. ターゲット
  7. トランスフォーメーション
  8. Pythonトランスフォーメーション
  9. クラスタワークフロー
  10. プロファイル
  11. 監視
  12. 階層データ処理
  13. 階層データ処理設定
  14. スキーマが変更された階層データの処理
  15. ブロックチェーン
  16. インテリジェント構造モデル
  17. ステートフルコンピューティング
  18. 接続
  19. データ型リファレンス
  20. 関数リファレンス

ユーザーガイド

ユーザーガイド

ウィンドウ関数としての集計関数

ウィンドウ関数としての集計関数

ウィンドウ関数として、LEADとLAGに加えて集計関数も使用できます。SUMやAVGなどの集計関数をウィンドウ関数として使用するときは、ステートフル関数であるMOVINGSUM、MOVINGAVG、CUMEと類似する実行計算を実行できます。ウィンドウ関数には、特定の終了オフセットを設定できるため、ステートフル関数よりも柔軟です。
集計関数をウィンドウ関数として使用するには、ウィンドウ化プロパティ内にフレームを定義する必要があります。フレームは、計算のスコープを制限するために定義できます。集計関数は、フレームを超えて計算を実行し、各行に1つの値を生成します。

あなたは過去2年間、さまざまな数量の木材を販売してきた材木営業担当者であるとします。販売数量の現在までの累計を計算します。
次の表に、各販売ID、日付、販売数量の一覧を示します。
Sale_ID
Date
Quantity
30001
2016-08-02
10
10001
2016-12-24
10
10005
2016-12-24
30
40001
2017-01-09
40
10006
2017-01-18
10
20001
2017-02-12
20
SUM関数によって、すべての値が合計され、1つの出力値が返されます。各行の累計を得るため、関数の境界に対してフレームを定義できます。
次の図に、[ウィンドウイング]タブで指定するフレームを示します。
開始オフセットは前のすべての行であり、終了オフセットは0です。オーダーキーは昇順の日付です。パーティションキーは指定されていません。
次のウィンドウ化プロパティを構成します。
  • 開始オフセット: 前のすべての行
  • 終了オフセット: 0
  • オーダーキー: 昇順の日付
  • パーティションキー: 指定なし
次の集計関数を定義します。
SUM (Quantity)
SUMは、現在の行の数量を、現在の行の前のすべての行の数量に加算します。この関数は、各行の累計を返します。
次の表に、各日付の累計を示します。
Sale_ID
Date
Quantity
Total
30001
2016-08-02
10
10
10001
2016-12-24
10
20
10005
2016-12-24
30
50
40001
2017-01-09
40
90
10006
2017-01-18
10
100
20001
2017-02-12
20
120