UDTはカスタム データ型で、アプリケーションで扱うデータの構造体と動作をモデル化することができます。
Teradata Databaseでは、以下の2種類のUDTがサポートされています。 DISTINCT型およびSTRUCTURED型。 DISTINCT型は、INTEGERやVARCHARなど、事前定義された1つのデータ型に基づくものです。 STRUCTURED型は、事前定義型または他のUDTのいずれかである1つ以上の名前付き属性で構成されます。
DISTINCT型およびSTRUCTURED型のUDTをテーブル定義のカラムのデータ型として指定することに加え、スカラー、集約、およびテーブル関数型のUDFパラメータおよび戻り値のデータ型として指定することもできます。
Teradata Databaseでは、動的UDTと呼ばれるSTRUCTURED型UDTの形式もサポートされています。DISTINCT型またはSTRUCTURED型を定義するときのように、CREATE TYPE文を使ってUDTを定義する代わりに、NEW VARIANT_TYPE式を使って動的なUDTのインスタンスを宣言し、実行時にUDTの属性を定義することもできます。
動的なUDTをUDFの入力パラメータのデータ型として指定できます。他の場所では使われません。