VARIANT data: Casting some of the fixed numeric values to floating-point results in different approximate values¶
このバンドルが有効になっている場合、 VARIANT 値 から 固定数値 を抽出し、その数値を 浮動小数点型 にキャストすると、結果の値が異なる場合があります。
この動作の変化は、キャストの幅が狭い場合、言い換えれば、キャストの型が値を保持できない場合に発生します。キャストは、元の値に近い別の近似値を返す可能性があります。
たとえば、 VARIANT 列の固定数値 264208207.9326154526043824 を FLOAT にキャストすると、動作変更前の結果の値と動作変更後の値は異なります。
元の数値( FLOAT にキャストする前の値):
264208207.9326154526043824
動作変更前の数値( FLOAT へのキャスト後):
264208207.93261543
動作変更後の数値( FLOAT へのキャスト後):
264208207.93261546
この動作変更は、 VARIANT 値にない数値をキャストした場合の結果と一貫性を持たせるために導入されています。
参照:2106