ホームページ >データベース >mysql チュートリアル >MySQL の財務データに DECIMAL を選択する理由
金銭データの精度と処理: MySQL DECIMAL について
MySQL で 10 進数値を扱う場合、DOUBLE 列と DECIMAL 列を区別することが重要です。 DOUBLE は最初は適切なオプションのように見えますが、その近似的な性質により、特に財務データの場合は不正確になる可能性があります。一方、
DECIMAL 列は数値を正確に表現します。 00.0001 ~ 99.9999 の数値を格納できる列を作成するには、次の形式を使用します。
CREATE TABLE your_table( your_column DECIMAL(6,4) NOT NULL );
最初のパラメータ (6) は最大桁数 (精度) を表し、2 番目のパラメータ (4) は最大桁数 (精度) を表します。小数点以下の桁数(スケール)を示します。これは、指定された列に -99.9999 ~ 99.9999 の範囲の値を格納できることを意味します。
たとえば、-9999.99 ~ 9999.99 の値を受け入れる列を作成するには、DECIMAL(6,2) を使用します。精度は 6 のままですが、スケールは 2 に減らされ、小数点以下 2 桁が許容されます。
ニーズに合った正しい精度とスケールがわからないですか?包括的な情報については、MySQL の公式ドキュメントを参照してください。
MySQL バージョン 5.0.3 以降は DECIMAL 列をサポートしていることに注意してください。以前のバージョンを使用している場合は、精度と精度の向上を活用するためにアップグレードを検討してください。
MySQL 8.0.17 の更新:
署名なしカラムは非推奨です。 FLOAT、DOUBLE、DECIMAL 型により、プラットフォーム間でのデータ表現が向上します。
以上がMySQL の財務データに DECIMAL を選択する理由の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。