SQL查询时看到的一个奇怪问题(20分)

W

wlt3022

Unregistered / Unconfirmed
GUEST, unregistred user!
在SQL控制台建立了一个表为表1,其中有一字段为shl类型为float型。
直接打开表1看里面的数据为2.7,
但奇怪的问题是我在用SQL查询分析器查看的时候是
2.7000000000000002
请问高手,次问题如何解决?
 
最基础的,你先看下浮点数的定义,所谓浮点数都有一定精度的,这个精度跟运算器或者CPU的类型有关吧,你在表里看到的只是用科学技术法省略掉了,select出来的才是真实的浮点数值,还要注意,浮点数是不能相减比大小的,例如x=2.7,y=2.7,x-y>0,这样使错误的,因为不同机器里x跟y的大小是不确定的,可能x=2.70000001,y=2.69999999,但是换了机器可能正相反
 
定义好长度试下. 或者用转换函数重新转换下.
 
x:=flottostrf(a,fffixed,10,2);
 
好的谢谢各位大哥了。
 
好的谢谢各位大哥了。
 
顶部