17.00 - 17.05 - getPhase() - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQL外部ルーチン プログラミング

Product
Advanced SQL Engine
Teradata Database
Release Number
17.00
17.05
Published
2020年6月
Content Type
プログラミング リファレンス
Publication ID
B035-1147-170K-JPN
Language
日本語 (日本)

現在の集約フェーズを戻します。集約フェーズは、渡されたデータを処理する方法を決定します。

戻り値

戻り値はフェーズ定数の1つです。

意味
Phase.AGR_INIT Teradata Databaseが、ある集約グループに対して初めて集約UDFを呼び出した場合です。

ウィンドウ集約UDFでは、このフェーズは新たな集約グループまたは最初の行の開始時にパーティションごとに1回トリガーされます。

UDFでは、次のことを実行する必要があります。

  • 中間記憶域を割り当て、初期設定する。
  • UDFに渡された最初の詳細データを処理する。
Phase.AGR_DETAIL このフェーズは、行が前進する度にトリガーされます。

このフェーズでは、Teradata Databaseは、各グループごとに、集約の対象となる行ごとに1回ずつUDFを呼び出します。

UDFでは、入力データと、そのグループに対して定義されている中間記憶域を組み合わせする必要があります。

Phase.AGR_COMBINE このフェーズでは、特定のグループについて、異なるAMPによる結果を組み合わせします。

UDFでは、データが渡された2つの中間記憶域のデータを組み合わせする必要があります。

このフェーズはウィンドウ集約UDFには適用しません。

Phase.AGR_MOVINGTRAIL このフェーズは、移動ウィンドウ タイプ(非累積/非レポート ウィンドウ タイプ)のウィンドウ集約UDFにのみ適用します。

このフェーズは、ウィンドウを指す前進ポインタがグループの終端またはファイルの終端に到達したときに、移動ウィンドウの最後の数行によってトリガーされます。

このフェーズはUDFに行も値も提供せず、主にグループまたはファイルの終端に到達しつつあることをUDFに表示するために使用されます。

UDFは、ウィンドウがグループやファイルの終端方向に縮小するのに応じて、実際のサイズを反映するように必要な内部カウントまたは関連する値を調整するために、このフェーズを使用します。

Phase.AGR_FINAL このグループに対する入力は、もうないはずです。UDFでは、そのグループの最終結果を作成する必要があります。
Phase.AGR_NODATA このフェーズが関係してくるのは、集約するデータが何もない場合だけです。