17.10 - 例: UDF定義でのTD_ANYTYPEパラメータ型とRETURNS句データ型の使用 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ定義言語 構文規則および例

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Release Date
2021年7月
Content Type
プログラミング リファレンス
Publication ID
B035-1144-171K-JPN
Language
日本語 (日本)

この関数では、有効な入力パラメータとして、CHARACTER、VARCHAR、CLOBの各データ型を使用できます。次の参照先、<Teradata Vantage™ - SQL外部ルーチン プログラミング、B035-1147>には、ascii Cコードについての情報があります。

この関数は、ASCII文字エンコーディング方式に基づいて、最初の文字の数値表現をstring_exprパラメータで返します。

この関数で使用できるRETURNS句の型は、BYTEINT、SMALLINT、INTEGERのいずれかになります。

この関数を使用して、データのサーバー文字セットに関する知識なしに、CHARACTER、VARCHAR、またはCLOBの数値表現を判断できます。さらにこの関数では、BYTEINT、SMALLINT、INTEGERのいずれかのデータ型でデータを要求して返すこともできます。

     CREATE FUNCTION ascii (
       string_expr  TD_ANYTYPE)
     RETURNS TD_ANYTYPE
     LANGUAGE C
     NO SQL
     SPECIFIC ascii
     EXTERNAL NAME 'CS!ascii!ascii.c'
     PARAMETER STYLE SQL;

TD_ANYTYPEパラメータ型では、サポートされているデータ型であればどのデータ型でも使用できるので、さまざまなパラメータ データ型に対応するために、ascii_char_latin()、ascii_char_unicode()、ascii_varchar_latin()、ascii_varchar_unicode()、ascii_clob_latin()、ascii_clob_unicode()などのような関数を別々に作成する必要はありません。