オーバーロード関数のパラメータ型 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQL外部ルーチン プログラミング

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
17.00
Published
2020年6月
Language
日本語
Last Update
2021-03-30
dita:mapPath
ja-JP/qwr1571437338192.ditamap
dita:ditavalPath
ja-JP/qwr1571437338192.ditaval
dita:id
B035-1147
Product Category
Software
Teradata Vantage

関数名をオーバーロードする場合に、それらの関数に渡すパラメータの数が同じなら、パラメータのデータ型が互いに異なるものになるように、それらの関数を定義する必要があります。データ型がどんな場合に互いに異なると言えるかについては、次のテーブルを参照してください。

データ型 ルール
数値 次の数値データ型は互いに区別され、さらにこれら以外のデータ型とも区別されます。
  • BYTEINT
  • SMALLINT
  • INTEGER
  • BIGINT
  • DECIMAL/NUMERIC
  • NUMBER
  • REAL/FLOAT/DOUBLE PRECISION

サイズが異なるDECIMAL型、NUMERIC型またはNUMBER型は区別されません。例えば、DECIMAL(6,2)とDECIMAL(8,3)は区別されません。

日付/時刻 次の日付/時刻データ型は互いに区別され、さらにこれら以外のデータ型とも区別されます。
  • DATE
  • TIME
  • TIMESTAMP
  • TIME WITH TIME ZONE
  • TIMESTAMP WITH TIME ZONE
  • すべてのINTERVAL型

有効桁数または秒の小数点以下桁数の異なるTIME、TIMESTAMP、およびINTERVALの各データ型は区別されません。例えば、TIME(2)とTIME(6)は区別されません。

文字 次の文字型は互いに区別され、さらにこれら以外のデータ型とも区別されます。
  • VARCHAR/CHAR VARYING/LONG VARCHAR
  • CHAR
  • CLOB

長さの異なる文字列は区別されません。例えば、CHAR(10)とCHAR(5)は区別されません。

CHARACTER SET句に指定するサーバー文字セットが異なる文字列は、区別されません。

バイト 次のバイト データ型は互いに区別され、さらにこれら以外のデータ型とも区別されます。
  • BYTE
  • VARBYTE
  • BLOB
グラフィック 次のグラフィック データ型は互いに区別され、さらにこれら以外のデータ型とも区別されます。
  • CHARACTER CHARACTER SET GRAPHIC
  • VARCHAR CHARACTER SET GRAPHICまたは

    LONG VARCHAR CHARACTER SET GRAPHIC

UDT UDTは、他のデータ型(他のUDTも含む)とは異なる別の型です。
PERIOD 次のPERIODデータ型は互いに区別され、さらにこれら以外のデータ型とも区別されます。
  • PERIOD(DATE)
  • PERIOD(TIME(n))
  • PERIOD(TIME(n) WITH TIME ZONE)
  • PERIOD(TIMESTAMP(n))
  • PERIOD(TIMESTAMP(n) WITH TIME ZONE)

秒の小数点以下桁数の異なるPERIOD(TIME(n))、PERIOD(TIME(n) WITH TIME ZONE)、PERIOD(TIMESTAMP(n))、およびPERIOD(TIMESTAMP(n) WITH TIME ZONE)のデータ型は、区別されません。例えば、PERIOD(TIME(2))とPERIOD(TIME(6))は区別されません。

スラッシュ( / )で区切られているデータ型は互いに同義語であり、区別されません(DECIMAL/NUMERICなど)。