例: UDF定義でのTD_ANYTYPEパラメータ型とRETURNS句データ型の使用 - 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/ncd1596241368722.ditamap
dita:ditavalPath
ja-JP/ncd1596241368722.ditaval
dita:id
B035-1144
Product Category
Software
Teradata Vantage

この関数では、有効な入力パラメータとして、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()などのような関数を別々に作成する必要はありません。