小数在我们的日常使用中经常使用到,有时候需要取整,有时候需要四舍五入,在不同的软件中还是不一样的,以下列出2种:
1.EXECL: 直接使用ROUND函数就可以,例如ROUND(3.1415926,3)=3.142 / ROUND(3.1415926,0)=3 不了解的可以查询下Office的帮助。
2.Access: Access中也有ROUND函数,但不是四舍五入,而是五舍六入(不知道为什么,同一个公司的Office产品,为什么同名函数功能不一样,测试环境是office2003),此法行不通。
经过多次试验,发现Access中的FORMAT函数可以实现四舍五入的功能,例:FORMAT(3.14159,0)=3 / FORMAT(0.5,0)=1;
在access中执行下列查询语句就可看出差别:
SELECT 3.1415926, format(3.1415926,0), format(3.1415926,"0.000"),Round(3.1415926,3),Round(0.5,0),Round(0.6,0) FROM user_login;
这个是Microsoft给出的解释:
返回 Variant (String) 类型的值,其中包含根据格式表达式中所包含的指令设置格式的
语法
Format(expression [, format ] [, firstdayofweek ] [, firstweekofyear ] )
Format 函数的语句包含以下参数:
参数 | 说明 |
---|---|
expression | 必选。任何有效的表达式。 |
format | 可选。有效的命名格式表达式,或用户定义的格式表达式。 |
firstdayofweek | 可选。常量 (常量:不进行计算的值,因此也不会发生变化。例如,数字 210 以及文本“每季度收入”都是常量。表达式以及表达式产生的值都不是常量。),指定一周的第一天。 |
firstweekofyear | 可选。常量,指定一年的第一周。 |