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
日本語 (日本)

2項算術演算子の結果のデータ型を次のテーブルに示します。

UDTオペランドが関与する2項算術演算の結果のデータ型は、UDTの暗黙キャスト先の事前定義データ型の場合の結果データ型と同じです。

日時および間隔データ型を使用したバイナリ算術操作の結果データ型の詳細は、算術演算子/関数、三角関数、双曲線関数を参照してください。

左のオペランド 右のオペランド 使用する演算子 結果のデータ型
任意のデータ型 任意のデータ型 ** FLOAT
DATE BYTEINT

SMALLINT

INTEGER

BIGINT

+ - DATE

日付の結果の値がDATE型に許容されている範囲内にないとき、エラーが報告されます。その範囲とは、西暦の1年から9999年までの任意の日付です。

BYTEINT

SMALLINT

INTEGER

* / MOD INTEGER

DATEのこれらの演算はエラーを報告しませんが、結果は、通常意味がありません。

  BIGINT * / MOD BIGINT

DATEのこれらの演算はエラーを報告しませんが、結果は、通常意味がありません。

DECIMAL(k,j) + - DATE

DATEのこれらの演算はエラーを報告しませんが、結果は、通常意味がありません。

日付の値に対する加算または減算の場合、小数の小数点以下は切り捨てられます。

日付の結果の値がDATE型に許容されている範囲内にないとき、エラーが報告されます。その範囲とは、西暦の1年から9999年までの任意の日付です。

* / MOD DECIMAL(p,j)

DATEのこれらの演算はエラーを報告しませんが、結果は、通常意味がありません。

pの値の詳細について、DECIMALの結果のデータ型を参照してください。

NUMBER(k,j)

NUMBER(k)

NUMBER(*,j)

NUMBER

+ - DATE

DATEのこれらの演算はエラーを報告しませんが、結果は、通常意味がありません。

日付の値に対する加算または減算の場合、小数の小数点以下は切り捨てられます。

日付の結果の値がDATE型に許容されている範囲内にないとき、エラーが報告されます。その範囲とは、西暦の1年から9999年までの任意の日付です。

* / MOD NUMBER
FLOAT * / + - MOD FLOAT
DATE - INTEGER

2つの日付の差は、これらの日付の間の日数です。これは、値の数値の差ではないことに注意する必要があります。

+ * / MOD INTEGER

DATEのこれらの演算はエラーを報告しませんが、結果は、通常意味がありません。

CHAR(n)

VARCHAR(n)

* / + - MOD FLOAT

DATEのこれらの演算はエラーを報告しませんが、結果は、通常意味がありません。

算術演算子の引数が文字列の場合には、最初のアクションとしてその文字列から浮動小数点の数値への変換が試みられます。この変換が失敗した場合には、エラーが報告されます。

BYTEINT

SMALLINT

INTEGER

BYTEINT

SMALLINT

INTEGER

* / + - MOD INTEGER
BIGINT * / + - MOD BIGINT
DECIMAL(k,j) * / + - MOD DECIMAL(p,j)

pの値の詳細について、DECIMALの結果のデータ型を参照してください。

NUMBER(k,j)

NUMBER(k)

NUMBER(*,j)

NUMBER

* / + - MOD NUMBER
FLOAT * / + - MOD FLOAT
CHAR(n)

VARCHAR(n)

* / + - MOD FLOAT

算術演算子の引数が文字列の場合には、最初のアクションとしてその文字列から浮動小数点の数値への変換が試みられます。この変換が失敗した場合には、エラーが報告されます。

DATE + DATE

日付の結果の値がDATE型に許容されている範囲内にないとき、エラーが報告されます。その範囲とは、西暦の1年から9999年までの任意の日付です。

- エラー
* / MOD INTEGER

DATEのこれらの演算はエラーを報告しませんが、結果は、通常意味がありません。

BIGINT BYTEINT

SMALLINT

INTEGER

BIGINT

* / + - MOD BIGINT
DECIMAL(k,j) * / + - MOD DECIMAL(p,j)

pの値の詳細について、DECIMALの結果のデータ型を参照してください。

NUMBER(k,j)

NUMBER(k)

NUMBER(*,j)

NUMBER

* / + - MOD NUMBER
FLOAT * / + - MOD FLOAT
CHAR(n)

VARCHAR(n)

* / + - MOD FLOAT

算術演算子の引数が文字列の場合には、最初のアクションとしてその文字列から浮動小数点の数値への変換が試みられます。この変換が失敗した場合には、エラーが報告されます。

DATE + DATE

日付の結果の値がDATE型に許容されている範囲内にないとき、エラーが報告されます。その範囲とは、西暦の1年から9999年までの任意の日付です。

- エラー
* / MOD BIGINT

DATEのこれらの演算はエラーを報告しませんが、結果は、通常意味がありません。

DECIMAL(m,n) BYTEINT

SMALLINT

INTEGER

BIGINT

+ - * DECIMAL(p,n)

pの値の詳細について、DECIMALの結果のデータ型を参照してください。

/ MOD DECIMAL(m,n)
DECIMAL(k, j) + - DECIMAL(min(p,(1+max(n,j)+max(m -n,k-j))),max(n,j))

pの値の詳細について、DECIMALの結果のデータ型を参照してください。

* DECIMAL(min(p,m +k),(n+j))

pの値の詳細について、DECIMALの結果のデータ型を参照してください。

/ MOD DECIMAL(p,max(n,j))

pの値の詳細について、DECIMALの結果のデータ型を参照してください。

NUMBER(k,j)

NUMBER(k)

NUMBER(*,j)

NUMBER

* / + - MOD NUMBER
FLOAT * / + - MOD FLOAT
CHAR(n)

VARCHAR(n)

* / + - MOD FLOAT

算術演算子の引数が文字列の場合には、最初のアクションとしてその文字列から浮動小数点の数値への変換が試みられます。この変換が失敗した場合には、エラーが報告されます。

DATE + DATE

日付の値に対する加算または減算の場合、小数の小数点以下は切り捨てられます。

日付の結果の値がDATE型に許容されている範囲内にないとき、エラーが報告されます。その範囲とは、西暦の1年から9999年までの任意の日付です。

- エラー
* DECIMAL(p,n)

DATEのこれらの演算はエラーを報告しませんが、結果は、通常意味がありません。

pの値の詳細について、DECIMALの結果のデータ型を参照してください。

/ MOD DECIMAL(m,n)

DATEのこれらの演算はエラーを報告しませんが、結果は、通常意味がありません。

NUMBER(m,n)

NUMBER(m)

NUMBER(*,n)

NUMBER

BYTEINT

SMALLINT

INTEGER

BIGINT

* / + - MOD NUMBER
DECIMAL(k,j)
FLOAT * / + - MOD FLOAT
CHAR(n)

VARCHAR(n)

FLOAT

算術演算子の引数が文字列の場合には、最初のアクションとしてその文字列から浮動小数点の数値への変換が試みられます。この変換が失敗した場合には、エラーが報告されます。

DATE + DATE

日付の値に対する加算または減算の場合、小数の小数点以下は切り捨てられます。

日付の結果の値がDATE型に許容されている範囲内にないとき、エラーが報告されます。その範囲とは、西暦の1年から9999年までの任意の日付です。

- エラー
* NUMBER

DATEのこれらの演算はエラーを報告しませんが、結果は、通常意味がありません。

/ MOD NUMBER

DATEのこれらの演算はエラーを報告しませんが、結果は、通常意味がありません。

  NUMBER(k,j)

NUMBER(k)

NUMBER(*,j)

NUMBER

* / + - MOD NUMBER
FLOAT BYTEINT

SMALLINT

INTEGER

BIGINT

DECIMAL(k,j)

NUMBER(k,j)

NUMBER(k)

NUMBER(*,j)

NUMBER

FLOAT

* / + - MOD FLOAT
DATE * / + - MOD FLOAT

DATEのこれらの演算はエラーを報告しませんが、結果は、通常意味がありません。

CHAR(n)

VARCHAR(n)

* / + - MOD FLOAT

算術演算子の引数が文字列の場合には、最初のアクションとしてその文字列から浮動小数点の数値への変換が試みられます。この変換が失敗した場合には、エラーが報告されます。

CHAR(n)

VARCHAR(n)

BYTEINT

SMALLINT

INTEGER

BIGINT

DECIMAL(k,j)

NUMBER(k,j)

NUMBER(k)

NUMBER(*,j)

NUMBER

FLOAT

CHAR(n)

VARCHAR(n)

* / + - MOD FLOAT

算術演算子の引数が文字列の場合には、最初のアクションとしてその文字列から浮動小数点の数値への変換が試みられます。この変換が失敗した場合には、エラーが報告されます。

DATE * / + - MOD FLOAT

DATEのこれらの演算はエラーを報告しませんが、結果は、通常意味がありません。

算術演算子の引数が文字列の場合には、最初のアクションとしてその文字列から浮動小数点の数値への変換が試みられます。この変換が失敗した場合には、エラーが報告されます。