MySQL の 10 進数は、FLOAT 型や DOUBLE 型を含む浮動小数点数として表されます。 FLOAT は精度が低く範囲が狭いのに対し、DOUBLE は精度が高く範囲が広いです。 FLOATは高精度を必要としない数値に適しており、DOUBLEは高精度を必要とする数値に適しています。 10 進数表現は浮動小数点規格に限定されており、高い精度が必要な計算には、DECIMAL 型を使用することをお勧めします。
MySQL における小数の表現
MySQL では、小数は浮動小数点数型で表現されます。 2 つのタイプ:
-
FLOAT: 精度は 24 ビットで、格納範囲は -3.4028234663852886e 38 ~ -1.1754943508222875e-38 および 0 ~ 1.1754943508222875e 38 です。
-
DOUBLE: 53 ビット精度、FLOAT よりも広い記憶範囲、-1.7976931348623157e 308 ~ -4.9406564584124654e-324 および 0 ~ 4.9406564584124654e 324。
FLOAT または DOUBLE を選択してください
FLOAT と DOUBLE はさまざまなシナリオに適しています:
-
FLOAT:通常、通貨の値や温度など、範囲が狭く、精度要件が低い値を保存するために使用されます。
-
DOUBLE: 科学計算や統計データなど、広範囲かつ高精度が要求される値の保存に適しています。
10 進数表現の例
FLOAT および DOUBLE での 10 進数表現の例をいくつか示します。
- FLOAT: - 123.456789
- DOUBLE: -1234567890123456789.123456789
Note
- MySQL の 10 進表現は IEEE 754 浮動小数点に完全には準拠していません標準。
- 浮動小数点数の精度には限界があるため、一部の演算では丸め誤差が発生する可能性があります。
- 高精度が必要な 10 進数の計算の場合は、浮動小数点数型の代わりに DECIMAL 型を使用することをお勧めします。
以上がmysqlで小数を表現する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。