すべてのコンピューター科学者が浮動小数点演算について知っておくべきことを見てください。
コンピューターの浮動小数点数は、小数を正確に表すわけではありません。代わりに、バイナリを表します 分数。ほとんどの小数は、2進数として正確に表現されていないため、丸めが行われています。このような丸められた2進数の小数部が小数部に変換されると、説明した効果が得られます。
金額の値を格納するために、SQLデータベースは通常、正確な10進数を格納するDECIMALタイプを提供します。この形式は、コンピューターが処理する効率がやや劣りますが、小数点以下の丸め誤差を回避したい場合に非常に役立ちます。