17.10 - 引数のタイプとルール - 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-1145-171K-JPN
Language
日本語 (日本)
BITXORはオーバーロード スカラー関数です。target_argパラメータのデータ型は、以下のいずれかになります。
  • BYTEINT
  • SMALLINT
  • INTEGER
  • BIGINT
  • VARBYTE(n)

bit_mask_argパラメータのデータ型は、target_argパラメータのデータ型に応じて多様に変化します。次に示す入力の組み合わせ(target_arg, bit_mask_arg)が許容されています。

target_arg bit_mask_arg
BYTEINT BYTE(1)
BYTEINT BYTEINT
SMALLINT BYTE(2)
SMALLINT SMALLINT
INTEGER BYTE(4)
INTEGER INTEGER
BIGINT BYTE(8)
BIGINT BIGINT
VARBYTE(n) VARBYTE(n)

VARBYTEの(n)に対する最大対応サイズは、8192バイトです。

この関数に渡す式は、上記に明示したデータ型と一致するか、UDFに適用される暗黙のデータ型変換ルールを使用して、上記のタイプに変換できる必要があります。例えば、BITXOR(BYTEINT, INTEGER)は、暗黙的にBITXOR(INTEGER,INTEGER)に変換できるため許容されます。

UDFの暗黙の型変換ルールは、Vantageで通常使用される暗黙の型変換ルールよりも制限されています。UDFの暗黙の変換ルールに従って上記に明示したデータ型のいずれかに変換できない引数がある場合は、その引数を明示的にキャストする必要があります。

いずれかの引数が、上記に明示したデータ型に変換できない場合は、実行依頼されたDML UDF式と一致する関数が存在しないことを示すエラーが返されます。