使用上の注意 - Teradata Database - Teradata Vantage NewSQL Engine - ARRAY AGG関数、使用上の注意。

Teradata Vantage™ データ タイプおよびリテラル

Product
Teradata Database
Teradata Vantage NewSQL Engine
Release Number
16.20
Published
2019年3月
Language
日本語
Last Update
2019-10-29
dita:mapPath
ja-JP/xnq1529717274657.ditamap
dita:ditavalPath
ja-JP/xnq1529717274657.ditaval
dita:id
B035-1143
Product Category
Software
Teradata Vantage

任意のarray_expressionを渡せることから、渡すARRAYタイプ値には、初期化された構成要素が含まれていても、いなくてもかまいません。ただし、ARRAY_AGGはarray_expression内の初期化済みの構成要素は無視します。array_expressionは、結果値のデータ型を指定する場合にのみ使用されます。

推奨事項: このパラメータには、NEW myArray()など、必要なARRAYタイプ値の空のインスタンスを渡します。

ARRAY_AGGに渡されるarray_expression引数がNULLリテラルの場合、エラーが返されます。array_expression引数をARRAYデータ型に解決できる場合、データにNULLが含まれていても関数は正常に実行されます。

処理中の現在行のvalue_expression引数がNULLと評価される場合、その式は集計中の値のリストから除外されず、非NULL構成要素で行なうのと同様に、適切なARRAY構成要素の値を設定するために使用されます。これはANSI SQL:2011規格に対応し、規格では、ARRAY_AGGとその他の集約関数との違いとして注記されています。

ARRAY_AGGは、CLASS AGGREGATE値を64000として作成されています。これは、そのサイズで中間集計ストレージが割り当てられることを意味します。中間集計ストレージは固定長値なので、このバッファがオーバーフローするような非常に大きな入力セットを処理する場合も考えられます。すべての集計UDFにこの制限があります。