メソッド呼び出し - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQL演算子およびユーザー定義関数

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
Published
2021年1月
Language
日本語
Last Update
2021-03-31
dita:mapPath
ja-JP/xwv1596137968859.ditamap
dita:ditavalPath
ja-JP/xwv1596137968859.ditaval
dita:id
B035-1210
Product Category
Software
Teradata Vantage

UDTに関連付けられたメソッドを呼び出します。

ANSI準拠

この文はANSI SQL:2011に準拠していますが、非ANSI Teradata拡張機能を含みます。

引数リストが空でも括弧が必要であるのは、既存のアプリケーションとの互換性を保つためのTeradata拡張です。

それ以外に、UDFの呼び出しまたはメソッドの呼び出しのどちらとも解釈できるあいまいな式を文で指定すると、Teradataでは、メソッドの呼び出しよりもUDFの呼び出しが優先されます。ANSI SQL:2011では、UDFの呼び出しよりもメソッドの呼び出しが優先されます。

構文

{ [ [ database_name. ]  table_name. ] column_name |

  udf_name ( [ argument_1 [,...] ] ) |

  CAST ( expression AS udt_name ) |

  [ NEW [SYSUDTLIB.] ] constructor_name ( [ argument_2 [,...] ] )

}.method_name_spec [,...]
method_name_spec
method_name ( [ argument_3 [,...] ] )

構文要素

database_name
column_nameの修飾子。
table_name
column_nameの修飾子。
column_name

DISTINCT型またはSTRUCTURED型のUDT列の名前。

コンストラクタ メソッドには、関連付けられたUDTと同じ名前が付きます。

udf_name

DISTINCT型またはSTRUCTURED型のUDTデータ型の名前。

コンストラクタ メソッドには、関連付けられたUDTと同じ名前が付きます。

argument

UDFへの引数。

コンストラクタに渡す引数。

メソッドに渡す引数。

引数リストが空であっても、括弧が付いていなければなりません。

CAST

ソース データの型をDISTINCT型またはSTRUCTURED型UDTに変換するCAST式。

UDTの関与するデータ型の変換には、そのUDTに適したCAST定義が必要です。UDTのCASTを定義するには、CREATE CAST文を使用します。CREATE CASTの詳細は、<Teradata Vantage™ - SQLデータ定義言語-構文規則および例、B035-1144>を参照してください。

expression
ターゲットUDTのキャスト定義のソースの型として互換性のあるデータ型を結果として生成する式。
NEW
STRUCTURED型の新しいインスタンスを生成し、指定されたコンストラクタ メソッドを使ってそれを初期化する式。
SYSUDTLIB.

コンストラクタが存在するデータベース。

Vantageは、データベース名が式内にあってもなくても、UDTコンストラクタをSYSUDTLIBデータベースだけで探します。

constructor_name

UDTに付随するコンストラクタ メソッドの名前。

コンストラクタ メソッドには、関連付けられたUDTと同じ名前が付きます。

method_name

オブザーバー、ミュテーター、またはユーザー定義メソッド(UDM)の名前。

各メソッド名の前にピリオドを付ける必要があります。