ホームページ >バックエンド開発 >PHPチュートリアル >mysql の float 型は非常に奇妙です。2 つの値は等しくありません。
mysql の float 型は非常に奇妙です。2 つの値は等しくありません。
テーブルには大量のデータがありますが、フィールドは float 型であり、その 2 つの値は非常に奇妙です。値は同じです
Payment value = 299.7
feiyong value = 299.7
クエリステートメント: feiyong>0 および Payment>0 および Payment
It現時点ではまだクエリを実行できますが、この問題が発生するのは少数の項目だけで、その他はすべて正常です。-----解決策のアイデア---------- ------------
浮動小数点数は非常に大きな数値を表すため、精度の一部が失われます 。そのため、比較する場合は、以下を適用します。差の絶対値が特定の最小値未満である または、比較する前に丸めを使用して有効な数値を取得します
アプリケーション (金融など) で正確な小数点以下の桁数が必要な場合は、DECIMAL 型を使用する必要があります
------解決策のアイデア--------------- ---------
結局のところ、これはごく普通のことです。データの正確性を保証します-----ソリューションアイデア---------------------
型を DECIMAL に変更することをお勧めします------解決策のアイデア----------- -------------