MySQL の DOUBLE と DECIMAL: 変換引数の再評価
MySQL の財務データ ストレージには DOUBLE を使用しないことがよく推奨されます。潜在的な精度エラーの可能性があります。ただし、783 の DOUBLE 列を持つ既存のシステムの場合、DECIMAL への変換を検討するには慎重な評価が必要です。
指定されたシナリオでは、システムは金額の値を DOUBLE 列に格納しますが、すべての計算は BigDecimal を使用して Java で実行します。 MySQL は結果の保存にのみ使用されます。実際のデータベース計算がないため、DOUBLE の精度の欠如は心配ありません。
さらに、システムは 6 年間、精度関連のバグなく動作しています。これは、10 進数 8 桁までの財務数値の場合、DOUBLE の 15 桁の精度で十分であることを示唆しています。
さらに、実行される特定のデータベース操作 (SUM および複素乗算) では、2 番目の精度が失われることはありません。 10 進数。これは、DOUBLE に関連する丸めの問題が保存されたデータの精度に影響を与えていないことを示しています。
したがって、計算が MySQL の外部で行われ、精度が重大な問題ではないこの特定のシナリオでは、問題が発生しない可能性があります。これが、DOUBLE 列を DECIMAL に変換する説得力のある理由です。ただし、将来 SQL 算術演算を計画している場合は、DECIMAL への変換を再検討する必要があることに注意することが重要です。
以上が計算が外部で実行される場合、財務データの MySQL で DOUBLE を DECIMAL に変換する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。