n_maco2回答ポイント 200ptウォッチ 1

MySQLのFLOAT型とDECIMAL型について質問です。


FLOAT型では桁数が足りないことに気付いたので、DECIMAL(20,13)に変更したのですが
ALTER TABLE `tablename` CHANGE `hoge` `hoge` DECIMAL( 20, 13 ) NULL DEFAULT NULL ;
ところがこのSQLを投げると、hogeカラムに入っていた999.999だった値が999.9990234375000に変更されてしまいます。

固定桁数の小数点表示になるので足りない部分が補足されるのはわかるのですが、元が無い値なので0で足りない部分を埋めてくるものだと思っていたのですが、そうではないのでしょうか。
この勝手に増やされた0.0000234375という値はどこから着たのでしょうか。

どなたかわかる方いらっしゃいましたらお教えいただけますと幸いです。
よろしくお願いいたします。

※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。
ログインして回答する

ベストアンサー

その他の回答

この質問へのコメント

この質問への反応(ブックマークコメント)

質問の情報

登録日時
2012-07-25 16:07:19
終了日時
2012-07-25 17:26:05
回答条件
1人5回まで

この質問のカテゴリ

この質問に含まれるキーワード

999.97MySQL2612SQL1319hoge915ALTER29小数点104

人気の質問

メニュー

PC版