Foxtable(狐表)用户栏目专家坐堂 → 请教四舍五入的问题


  共有3709人关注过本帖树形打印复制链接

主题:请教四舍五入的问题

帅哥哟,离线,有人找我吗?
18871608810
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:40 积分:343 威望:0 精华:0 注册:2020/8/5 15:08:00
请教四舍五入的问题  发帖心情 Post By:2020/8/10 9:16:00 [只看该作者]

我想保留2位小数,真实的四舍五入,使用ROUND2()函数,有一小部分的数据,第三位小数是五的没有“入”,例如:19.275,ROUND2(19.275,2)结果是19.27,不是19.28,请教这个问题怎么解决,目前已使用过Convert函数,ROUND,ROUND2,只有ROUND2是最接近四舍五入的,但是还是有例外情况,请教怎么解决? 

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110750 积分:563676 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/8/10 9:19:00 [只看该作者]

论坛里搜素“四舍五入”后很多解决方法,如:

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=139967&replyID=&skin=1

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=139174&skin=0

 回到顶部
帅哥哟,离线,有人找我吗?
18871608810
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:40 积分:343 威望:0 精华:0 注册:2020/8/5 15:08:00
  发帖心情 Post By:2020/8/10 16:43:00 [只看该作者]

感谢,希望以后Foxtable能出一个真正的四舍五入函数

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110750 积分:563676 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/8/10 16:53:00 [只看该作者]

四舍六入五成双是合理的。

不同的用法自己做个函数处理就行了

 回到顶部
帅哥哟,离线,有人找我吗?
绿火柴
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:482 积分:4510 威望:0 精华:0 注册:2014/3/4 21:20:00
  发帖心情 Post By:2020/8/10 21:31:00 [只看该作者]

蓝版,这样子不合理..
那为什么excel中,SQL中都是可以显示成19.28呢.

使用同样的.round函数
不过使用帮助中的例子,也是可以接受的.
以下是帮助中的例子:

如何实现四舍五入

表达式并没有提供传统的四舍五入函数Round,我们只能用Convert函数来间接实现。

例如金额列原来的计算公式为:

[数量] * [单价] * (1 - [折扣])

为了保留两位小数,可以将公式改为:

Convert([数量] * [单价] * (1 - [折扣]) * 100, 'System.Int64') / 100

原理很简单:将计算结果乘以100,然后取整,最后除以100。

如果你要保留三位小数,将表达式中的100改为1000即可,其余类推。

[此贴子已经被作者于2020/8/10 21:36:42编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110750 积分:563676 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/8/10 21:53:00 [只看该作者]

合理不合理不是我定义的:https://www.baidu.com/baidu?word=四舍六入五成双

 回到顶部