求和列精度后仅2位数字(无舍入)



我有一个浮点型列,其数字在精度后有6位。我想在精确后仅用两位数字对该列求和。

例如,我有1.257868和1.258778作为值,我想得到2.50的结果作为求和的结果。

看起来你想要这样的东西:

sum(floor(mycol * 100) / 100)

sum()中的表达式执行截断为2个小数。

您可以使用round():的3参数形式

select sum(round(mycol, 2, 1))

odbc截断

select v.val, {fn TRUNCATE(v.val, 2)} as trncted, sum({fn TRUNCATE(v.val, 2)}) over() as sumtrncated
from 
(values (1.257868), (1.258778)) as v(val);

最新更新