计算数据库里面的总数问题

arorn 2008-04-12 09:11:37
为什么我用sum查询access数据库里面的总数会有很多小数点.
比如说查询:
id user zonger
1 name 5.2
2 name 2.1
3 name 1.5

Conn.execute("select sum(zonger) as sum_jine from shop_action where username='"&request.Cookies("shopxp")&"' ")(0)


算出来的总数是:8.79999971389771

怎么回事啊?
...全文
106 点赞 收藏 9
写回复
9 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
arorn 2008-04-13
问题是解决了,就是不知道原因
回复
longnights 2008-04-13
[Quote=引用 1 楼 hookee 的回复:]
浮点数计算有精度问题
显示的时候用FormatNumber(value,2,-1,0,-1)格式化一下,保留足够的小数位就可以了
[/Quote]

zonger的字段是数值型 单精度型,所以sum(zongger)得出的数值sum_jine是单精度型,所以有这么多的小数
回复
snlixing 2008-04-13
也可以用round(value,2)
回复
snlixing 2008-04-13
浮点数得到的基本上都是近似值,所以如果要求精确的答案,应该该避免使用float和double.
可以使用Decimal.
回复
wpjwll 2008-04-12
up 1
回复
arorn 2008-04-12
我试了一下是可以的,我就想弄明白是怎么会事?
回复
qiuling_998 2008-04-12
同意1楼的说法!
回复
arorn 2008-04-12
zonger的字段是数值型 单精度型 这条设置有问题吗?

怎么会出现这么多小数点
回复
hookee 2008-04-12
浮点数计算有精度问题
显示的时候用FormatNumber(value,2,-1,0,-1)格式化一下,保留足够的小数位就可以了
回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2008-04-12 09:11
社区公告
暂无公告