mysql中decimal与float_MySQL float 与decimal 各中的区别。
生活随笔
收集整理的這篇文章主要介紹了
mysql中decimal与float_MySQL float 与decimal 各中的区别。
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
想一個問題:
1/3+1/3+1/3=1.0
0.3+0.3+0.3 =0.9
想一想在小數的世界里要什么表示1/3呢!它的辦法就是取一個與1/3十分接近的小數來代替;如上面例子中的0.3來代替1/3;這樣問題就來了存進去的是3個1/3取出時就只有0.9。
也許你感覺1/3這個數太特別了它本來就有無數位,近似值代替也是沒有辦法的。可是你知道嗎?在二進制的世界里0.1這樣的數也不是可以精確的存儲的(float),如果不明白這點就去看IEEE 754 標準。下面給出一個0.1的例子。
create table t(x float); insert into t(x) values(0.1);
create table t2(x decimal); insert into t2(0.1);
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
decimal 是以字符方式存儲的,它的精確度不會丟失。
總結
以上是生活随笔為你收集整理的mysql中decimal与float_MySQL float 与decimal 各中的区别。的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: xr是什么屏幕
- 下一篇: qt 不显示 mysql 数据表中的内容