1、Doube小数保留
NumberUtil.round(data,2).doubleValue()
NumberUtil.decimalFormat(“0.00”, 2.124) 2.12
NumberUtil.decimalFormat(“0.00%”, 2.126) 212.60%
2、BigDecimal
BigDecimal.valueOf(data).setScale(2, RoundingMode.HALF_UP).doubleValue()
注意当遇到5的时候可能是49999来表示5 就导致四舍五入不准确
mysql round(3.125,2) ==3.13,而clickhouse 默认采用银行家算法配置round(3.125,2) =3.12,处理CK保留3.13
可以使用SELECT ROUND(CAST(3.125 AS DECIMAL(10, 3)), 2);替代
Double,BigDecimal位数保留
于 2023-02-23 11:59:19 首次发布