回答

收藏

浮点数和十进制数据类型的区别

技术问答 技术问答 214 人阅读 | 0 人回复 | 2023-09-12

在 MySQL 浮点数和十进制数据类型有什么区别?  V$ L. L3 t+ e! }
我什么时候应该用哪个?
1 |) Z  ]# h( s5 h. y) i                                                               
2 I, a* Q4 ?( U9 T4 b    解决方案:                                                                ' o( i( h0 c0 Q3 V! V
                                                                当我有这个问题题时发现的。
1 i) s! w) t) T  _# x% cmysql> create table numbers (a decimal(10,2),b float);mysql> insert into numbers values (100,100);mysql> select @a := (a/3),@b := (b/3),@a * 3,@b * 3 from numbers \G*************************** 1. row ***************************  @a := (a/3): 33.333333333  @b := (b/3): 33.333333333333@a   @a   @a: 99.999999999000000000000000000000@b   @b   @b: 100在这种情况下,小数点完成了应该做的事情,切断了其余部分,从而失去了 1/3 部分。1 E1 d# Q# P" f6 N' K
所以对于总和,小数更好,但对于除法,浮点数更好,当然,在某种程度上。我的意思是,使用 DECIMAL 不会以任何方式为您提供失败证明算法。/ a0 I' \6 @: G; B3 r
希望这能有所帮助。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则