Decimal は MySQL に存在する正確なデータ型で、構文形式は「DECIMAL(M,D)」です。このうち、Mは数値の最大数(精度)、範囲は「1~65」、デフォルト値は10、Dは小数点以下の桁数(スケール)、その範囲は「0 ~ 30」ですが、M を超えてはなりません。
このチュートリアルの動作環境: Windows7 システム、mysql8 バージョン、Dell G3 コンピューター。
MySQL でサポートされている浮動小数点数の型には、FLOAT、DOUBLE、および DECIMAL 型が含まれます。DECIMAL 型は、FLOAT および DOUBLE とは異なります。DECIMAL は、実際には文字列として格納されます。 DECIMAL の最大値の範囲は DOUBLE と同じですが、有効な値の範囲は M と D の値によって決まります。 D を固定して M を変更すると、M が大きくなるにつれてその値の範囲は広くなります。
お金など、比較的精度の高いものには、10 進数タイプを使用することをお勧めします。float と double はエラーが発生しやすいため、考慮しないでください。数値と 10 進数は同義であり、数値は次のようになります。自動的に10進数に変換されます。
DECIMAL は MySQL 5.1 から導入され、カラム宣言の構文は DECIMAL(M,D) です。 MySQL 5.1 では、パラメータの値の範囲は次のとおりです。
M は数値の最大数 (精度) です。その範囲は 1 ~ 65 (古い MySQL バージョンでは、許可される範囲は 1 ~ 254) で、M のデフォルト値は 10 です。
D は、小数点の右側の桁数 (スケール) です。範囲は 0 ~ 30 ですが、M を超えてはなりません。
説明: float は 4 バイト、double は 8 バイト、decmail(M,D) は M 2 バイトを占めます。
たとえば、DECIMAL(5,2) の最大値は 9999.99 です。これは、使用可能なバイトが 7 バイトあるためです。
したがって、M と D は DECIMAL(M, D) の値の範囲に影響を与えるキーです。
型の説明 値の範囲 (MySQL 3.23) = 3.23)
DECIMAL(4,1) -9.9 ~ 99.9 -999.9 ~ 9999.9
DECIMAL(5,1) -99.9 ~ 999.9 -9999.9 ~ 99999.9
DECIMAL (6,1) -999.9 ~ 9999.9 -99999.9 ~ 999999.9
DECIMAL(6,2) -99.99 ~ 999.99 -9999.99 ~ 99999.99
DECIMAL(6,3) -9.999 ~ 99.999 - 999.999 ~ 9999.999
(推奨チュートリアル: mysql ビデオ チュートリアル )
指定された DECIMAL 型の値の範囲は、MySQL データ型のバージョンによって異なります。 MySQL3.23 より前のバージョンでは、DECIMAL(M, D) 列の各値は M バイトを占め、符号 (必要な場合) と小数点は M バイトに含まれます。したがって、DECIMAL(5, 2) 型の列は、考えられるすべての 5 文字の値をカバーするため、-9.99 から 99.99 の範囲の値を持ちます。
# MySQL 3.23 以降のバージョンでは、DECIMAL(M, D) の値の範囲は、以前のバージョンの DECIMAL(M 2, D) の値の範囲と同じです。
結論:
値がその値の範囲内にあり、小数点以下の桁数が多すぎる場合、小数点以下の桁は直接切り捨てられます。
値が値の範囲外の場合は、最大 (最小) の値を入力します。
プログラミング関連の知識について詳しくは、プログラミング ビデオをご覧ください。 !
以上が10 進数とはどのような型ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。