日期:2014-05-18  浏览次数:20532 次

真要命,我有个表,表个float类型的字段
这个float类型的字段,我插入一个 2.77的数值,结果数据里面保存成 2.76999998092651。。。然后我用 2.77 去比较这个字段

2.77 >= Price。。。结果为假。。。怎么办???

我插入的是2.77,应该等于啊?

------解决方案--------------------
用numeric 或者decimal类型
------解决方案--------------------
decimal(18,2) 就行了,定義那麼多幹嘛
------解决方案--------------------
探讨
搞成了decimal(38,5) 貌似是可以了。。没啥不良反映吧?!

------解决方案--------------------
float 和 real 数据类型被称为近似的数据类型。在近似数字数据类型方面,float 和 real 数据的使用遵循 IEEE 754 标准。