例: RETURNS指定を使用したUDFまたはメソッドの呼び出し - 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-30
dita:mapPath
ja-JP/vnq1596660420420.ditamap
dita:ditavalPath
ja-JP/vnq1596660420420.ditaval
dita:id
B035-1146
Product Category
Software
Teradata Vantage
この例で使用するテーブル定義は、以下のとおりです。
     CREATE TABLE t1 (
       int_col      INTEGER,
       var_char_col VARCHAR(40) CHARACTER SET UNICODE);
     CREATE TABLE t2 (
       int_col     INTEGER,
       decimal_col DECIMAL (10, 6));
これらの関数定義は、この例ではTD_ANYTYPEパラメータを識別するために使用されます。
     CREATE FUNCTION udf_1(
       A    INTEGER,
       B    TD_ANYTYPE)
       RETURNS TD_ANYTYPE;
     CREATE FUNCTION udf_3(
       A    INTEGER,
       B    TD_ANYTYPE)
       RETURNS TD_ANYTYPE;

次の例では、パラメータとしてt1.int_colおよびt2.decimal_colを使用し、明示的に指定された戻りデータ型としてDECIMAL(10,6)を使用して、udf_1を呼び出します。

     SELECT (udf_1 (t1.int_col, t2.decimal_col)
     RETURNS DECIMAL(10,6));

次の例では、パラメータとしてt1.var_char_colおよびt2.decimal_colを使用し、明示的に指定された戻りデータ型としてVARCHAR(40)を使用して、udf_3を呼び出します。

     SELECT (udf_3 (t1.var_char_col, t2.decimal_col)
     RETURNS VARCHAR(40) CHARACTER SET LATIN);

最後の例では、パラメータとしてt2.decimal_colを使用し、明示的に指定された戻りデータ型としてDECIMAL(10,6)を使用して、method_2を呼び出します。

     SELECT udt_col.(method_2(t2.decimal_col)
     RETURNS DECIMAL(10,6));