結果のタイプ - Teradata Database - Teradata Vantage NewSQL Engine

Teradata Vantage™ SQL関数、演算子、式および述部

Product
Teradata Database
Teradata Vantage NewSQL Engine
Release Number
16.20
Published
2019年3月
Language
日本語
Last Update
2019-10-29
dita:mapPath
ja-JP/xzf1512079057909.ditamap
dita:ditavalPath
ja-JP/xzf1512079057909.ditaval
dita:id
B035-1145
Product Category
Software
Teradata Vantage

入力引数が数値タイプの場合、関数は最も優先順位が高い引数を決定し、そのデータ型に他の引数を変換して、そのデータ型を返します。

そのデータ型がDECIMAL/NUMERICであり、入力引数の精度とスケールが異なる場合、戻りタイプの精度とスケールは最大精度になるように設定されます。例えば、入力引数がDECIMAL(6,3)、DECIMAL(7,4)、およびDECIMAL(8,7)の場合、精度の低下を避けるために、戻りタイプは小数点の左が3桁、右が7桁必要になります。この場合、返されるデータ型はDECIMAL(10,7)に設定されます。

最大精度を維持できない場合、データはDBS制御レコードのRoundHalfWayMagUpフィールドに基づいて丸められます。例えば、入力引数がDECIMAL(32, 8)とDECIMAL(30, 28)の場合、戻りタイプはDECIMAL(38,14)になります。これにより、小数点の左側の24桁(DECIMAL(32,8)の引数に必要)と、小数点の右側の14桁が用意されます。DECIMAL(30,28)の入力引数が最大値だとすると、その値は小数点から右側の14桁目で丸められます。

データ型が固定小数点数のNUMBERで精度が38以下の場合、戻りタイプの精度とスケールは、DECIMAL/NUMERICと同じメソッドを使用して計算されます。ただし、精度が38より大きい場合は、精度の低下を避けるために戻りタイプをNUMBER(*)に変更します。データ型が浮動小数点のNUMBERの場合、戻りタイプはNUMBER(*)になります。

入力引数が文字タイプの場合、この関数は2番目から10番目までの引数を最初の引数のデータ型に変換して、それを最初の引数の文字セットでVARCHARとしてタイプを返します。

入力引数が日付型の場合、関数は日付型を返します。

入力引数がTIMESTAMP型の場合、関数はTIMESTAMPの型を返します。最初のパラメータに明示的なタイムゾーンが含まれている場合、結果にはタイムゾーンも含まれます。

いずれかの入力引数がNULLの場合、この関数はNULLを返します。