目次

Search

  1. はじめに
  2. 関数リファレンス
  3. 定数
  4. 演算子
  5. 日付
  6. 関数
  7. システム変数
  8. データ型リファレンス

関数リファレンス

関数リファレンス

計算における整数値

計算における整数値

計算に整数値を使用した場合、
データ統合
では、計算実行の前に、整数値が浮動小数点数に変換されることがあります。
例えば、
MOD(12.00, 5)
を評価するために、
データ統合
は、除算を実行する前に整数値「5」を浮動小数点数に変換します。
データ統合
は、
マッピング
タスクの
[高精度を有効にする]
詳細セッションプロパティの設定内容に応じて、整数値を倍精度浮動小数点数または10進数の値に変換します。
データ統合
は、次の算術演算で整数値を変換します。
操作
高精度が無効
高精度が有効
小数点を使用できない関数と計算。
例えば、整数の加算、減算、乗算、およびCUME、SUMなどの関数。
変換なし。
ただし、計算結果が範囲外となった場合、
データ統合
は行エラーを書き込みます。
Decimal
小数点を使用できる非科学関数と計算。
たとえば、整数の除算、およびAVG、MEDIAN、PERCENTILEなどの関数。
Double
Decimal
すべての科学関数、EXP関数、LN関数、LOG関数、POWER関数、およびSQRT関数。
Double
Double
トランスフォーメーションのDoubleデータ型は最大15桁の精度をサポートし、Bigintデータ型は最大19桁の精度をサポートします。このため、計算結果が、精度が15桁より大きいBigint値となる計算では、精度の損失が発生することがあります。
例えば、Expressionトランスフォーメーションには以下の計算が含まれています。
POWER( BIGINTVAL, EXPVAL )
データ統合
は、計算を開始する前に、POWER関数への入力を倍精度浮動小数点数値に変換します。BIGINTVALフィールドにBigint値9223372036854775807が含まれている場合、
データ統合
はこの値を9.22337203685478e+18に変換し、最後の4桁の精度が失われます。EXPVALフィールドに値1.0が含まれており、結果フィールドがBigintの場合、計算結果の9223372036854780000が最大Bigint値を超えているため、行エラーが作成されます。
結果が10進数値となる計算でIntegerデータ型を使用しており、高精度を有効にした場合、
データ統合
では、整数値が10進数値に変換されます。
最大28桁精度のDecimalデータ型をサポートするトランスフォーメーションの場合、計算結果が高精度モードで28桁より大きい値にならない限り、精度の損失は発生しません。この場合、
データ統合
は、結果を倍精度浮動小数点数として格納します。フィールドの精度が28桁以下で、結果が高精度モードの28桁より大きい場合、
データ統合
は行を却下します。