中間結果の保存 - Advanced SQL Engine - Teradata Database

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

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Published
2021年7月
Language
日本語
Last Update
2021-09-23
dita:mapPath
ja-JP/rin1593638965306.ditamap
dita:ditavalPath
ja-JP/wrg1590696035526.ditaval
dita:id
B035-1147
Product Category
Software
Teradata Vantage

さらにUDFのAGR_INIT集約フェーズでは、引数によって渡される最初のデータ値セットを、中間集約記憶域に保存することも必要です。最初のデータ値セットは、そのグループで集約の対象となる最初の行のデータです。

その後、AGR_DETAIL集約フェーズで関数が呼び出されるごとに、関数は引数によって渡される行データを、その特定のグループに対応する中間集約記憶域に累積する必要があります。集約の対象となる各グループごとに、それぞれ別個の中間記憶域があります。

集約記憶域は、FNC_Context_t関数コンテキスト引数のinterim1によって参照されています。

標準偏差のサンプルのx入力引数は、標準偏差の計算の対象となる列です。標準偏差の計算において、この関数はxの値を使用して、次を計算します。
  • sum(X2)
  • sum(X)

列値を使用して必要な計算を実行し、その結果を中間記憶域に加算するための文は、次のようになります。

s1->n++;
s1->x_sq  += *x * *x;
s1->x_sum += *x;