計算に整数値を使用する場合、PowerCenter統合サービスでは、計算の前に整数値が浮動小数点数に変換されることがあります。 例えば、MOD(12.00, 5)を評価する場合、PowerCenter統合サービスは、除算を実行する前に整数値「5」を浮動少数点数に変換します。 PowerCenter統合サービスでは、高精度が有効にされているかどうかに応じて、整数値がDouble値またはDecimal値に変換されます。
計算に整数値を使用する場合、データ統合サービスでは、計算の前に整数値が浮動小数点数に変換されることがあります。 例えば、MOD(12.00, 5)を評価する場合、データ統合サービスは、除算を実行する前に整数値「5」を浮動少数点数に変換します。 データ統合サービスでは、高精度が有効にされているかどうかに応じて、整数値がDouble値またはDecimal値に変換されます。
計算に整数値を使用する場合、データ統合サービスでは、計算の前に整数値が浮動小数点数に変換されることがあります。 例えば、MOD(12.00, 5)を評価する場合、データ統合サービスは、除算を実行する前に整数値「5」を浮動少数点数に変換します。 データ統合サービスでは、高精度が有効にされているかどうかに応じて、整数値がDouble値またはDecimal値に変換されます。
PowerCenter統合サービスは、次の算術演算の整数値を変換します。
データ統合サービスは、次の算術演算の整数値を変換します。
データ統合サービスは、次の算術演算の整数値を変換します。
たとえば、整数の加算、減算、乗算、およびCUME、MOVINGSUM、SUMなどの関数。
| | |
たとえば、整数の除算、およびAVG、MEDIAN、PERCENTILEなどの関数。
| | |
すべての科学関数、EXP関数、LN関数、LOG関数、POWER関数、およびSQRT関数。
| | |
トランスフォーメーションのDoubleデータ型は最大15桁の精度をサポートし、Bigintデータ型は最大19桁の精度をサポートします。 このため、精度が15桁より大きいBigint値となる計算では、精度の損失が発生することがあります。
例えば、式トランスフォーメーションには以下の計算が含まれています。
POWER( BIGINTVAL, EXPVAL )
PowerCenter統合サービスでは、計算を開始する前に、POWER関数への入力をDouble値に変換します。 BIGINTVALポートにBigint値9223372036854775807が含まれている場合、PowerCenter統合サービスはこの値を9.22337203685478e+18に変換し、最後の4桁の精度が失われます。 EXPVALポートに値1.0が含まれており、結果ポートがBigintの場合、計算結果の9223372036854780000が最大Bigint値を超えているため、行エラーが作成されます。
結果がDecimal値となる計算でIntegerデータ型を使用し、高精度を有効にする場合、PowerCenter統合サービスでは、整数値がDecimal値に変換されます。
データ統合サービスでは、計算を開始する前に、POWER関数への入力をDouble値に変換します。 BIGINTVALポートにBigint値9223372036854775807が含まれている場合、データ統合サービスはこの値を9.22337203685478e+18に変換し、最後の4桁の精度が失われます。 EXPVALポートに値1.0が含まれており、結果ポートがBigintの場合、計算結果の9223372036854780000が最大Bigint値を超えているため、行エラーが作成されます。
結果がDecimal値となる計算でIntegerデータ型を使用し、高精度を有効にする場合、データ統合サービスでは、整数値がDecimal値に変換されます。
データ統合サービスでは、計算を開始する前に、POWER関数への入力をDouble値に変換します。 BIGINTVALポートにBigint値9223372036854775807が含まれている場合、データ統合サービスはこの値を9.22337203685478e+18に変換し、最後の4桁の精度が失われます。 EXPVALポートに値1.0が含まれており、結果ポートがBigintの場合、計算結果の9223372036854780000が最大Bigint値を超えているため、行エラーが作成されます。
結果がDecimal値となる計算でIntegerデータ型を使用し、高精度を有効にする場合、データ統合サービスでは、整数値がDecimal値に変換されます。
最大28桁精度のDecimalデータ型をサポートするトランスフォーメーションの場合、結果で高精度モードの28桁を超える値が出ない限り計算の精度は失われません。 この場合、PowerCenter統合サービスはDouble型で結果を保存します。ポート精度が28桁以下で、結果が高精度モードの28桁より大きい場合、PowerCenter統合サービスは行を拒否します。
最大28桁精度のDecimalデータ型をサポートするトランスフォーメーションの場合、結果で高精度モードの28桁を超える値が出ない限り計算の精度は失われません。 この場合、データ統合サービスは結果をDouble型として保存します。ポート精度が28桁以下で、結果が高精度モードの28桁より大きい場合、データ統合サービスは行を拒否します。
最大38桁精度のDecimalデータ型をサポートするトランスフォーメーションの場合、結果で高精度モードの38桁を超える値が出ない限り計算の精度は失われません。 この場合、データ統合サービスは結果をDouble型として保存します。ポート精度が38桁以下で、結果が高精度モードの38桁より大きい場合、データ統合サービスは行を拒否します。
最大38桁精度のDecimalデータ型をサポートするトランスフォーメーションの場合、結果で高精度モードの38桁を超える値が出ない限り計算の精度は失われません。 この場合、データ統合サービスは結果をDouble型として保存します。ポート精度が38桁以下で、結果が高精度モードの38桁より大きい場合、データ統合サービスは行を拒否します。