MySQL には、10 進数などの標準データ型だけでなく、float や double などの非標準データ型もあります。 違いは、float や double などの非標準型は DB に近似値を格納するのに対し、Decimal は数値を文字列の形式で格納することです。 幸いなことに、MySQL は 2 つのデータ型、10 進数を提供しており、これにより上記の問題を簡単に解決できます。10 進数型は MySQL によって SQL92 標準で許可されているのと同じ型で実装されています。お金に関連するデータなど、正確な精度が重要な値を保存するために使用されます。 データ定義 float(M,S) Mは合計の長さ、Sは小数点以下の長さです。インターネット上には不正確な例が多数ありますが、次のようにコピーします。 mysql> テーブル t1(c1 float(10,2), c3 小数点以下(10,2)) を作成します。 クエリは正常、影響を受けた行は 0 行 (0.02 秒) mysql> t1 に値 (9876543.21, 9876543.12) を挿入します。 クエリは正常、1 行が影響を受けました (0.00 秒) mysql> t1 から * を選択します。 +----------------+-----------------+ | c1 | c3 | +----------------+-----------------+ | 9876543.00 | 9876543.12 | +----------------+------------------+ セット内の 2 行 (0.00 秒) 別の例: DECIMAL(5,2) mysql>テーブル t1(id1 float(5,2) デフォルト null、id2 double(5,2) デフォルト null、 mysql> t1 に値 (1.2345,1.2345,1.2345) を挿入します。 mysql> 警告を表示します。 1.2345 --- 小数点以下は最大2桁なので保存可能で、データは自動的に切り捨てられるが、減少が報告される 12.34 --- 了解 1234.5 --- 小数点部分が 2 桁未満なので、0 を埋め込む必要があります。したがって、1234.50 として保存する必要があります。そのため、合計桁数が 5 を超え、保存時にエラーが報告されます。 1.2 --- 小数点部分を0で埋めます。 1.20 に従って保存します。 デフォルト状態の比較 浮動小数点数の場合、経度とスケールが書き込まれていない場合は、実際の精度値に従って保存されます。精度とスケールが書き込まれている場合は、丸められた結果が自動的に挿入され、システムはエラーを報告しません。固定小数点数の場合、精度とスケールが書き込まれていない場合は、デフォルト値の 10 進数 (10,0) が使用されます。データが精度とスケールの値を超えると、システムはエラーを報告します。 MySQLのDecimal型とFloat Doubleの違い(詳細説明)に関する上記の記事は、編集者があなたと共有するすべての内容です。参考になれば幸いです。また、123WORDPRESS.COMを応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: Tencent Cloud Server Centosにデータディスクをマウントする方法
>>: Nest.js 環境変数の設定とシリアル化の詳細な説明
以下は、純粋な CSS で記述された画像マウスホバーズーム効果です。実際、基本原理は非常に単純です。...
ほとんどのブラウザはデフォルトで入力値をキャッシュし、ctl+F5 を使用して強制的に更新することに...
序文この世の愛には値段のつくものもありますが、データには値段のつけられないものがあります。将来、誤っ...
<br />一部のWebサイトでアップロードする場合、「参照」ボタンをクリックすると[フ...
原文: http://www.planabc.net/2008/08/05/userdata_beh...
質問: Vue にブログ投稿をアップロードするためのフォームがあり、タイトル、本文、説明、スニペット...
MVCC MVCC (Multi-Version Concurrency Control) は、マル...
Nginx を使用して Tomcat9 クラスターを構築し、Redis を使用してセッション共有を実...
仮想マシンは使用中であるか、接続できません次のようなエラーが報告された場合解決まずこのページにアクセ...
おすすめの読み物: MySQL 8.0.19 は、間違ったパスワードを 3 回入力するとアカウント ...
データベースを使用するアプリケーションを開発する場合、必然的にユニオンクエリを使用する必要があります...
目次MySQL 制約操作1. 非ヌル制約2. ユニーク制約3. 主キー制約4. 外部キー制約5. カ...
はじめに使えるかもしれないが、あまり使われていない、シンプルで実用的なDockerコマンドをいくつか...
最近、プロジェクトで nginx を使用し、バックエンドで Java を使用しました。バックエンドで...
キーペアの分離1 つ以上の Linux インスタンスから SSH キー ペアのバインドを解除します。...