ROUND
将参数 x
舍入至 d
位小数。舍入算法取决于 x
的数据类型。若未指定 d
,则默认为 0。d
可为负数,使 x
的小数点左侧 d
位变为零。d
的最大绝对值为 30;超出 30(或 -30)的位数将被截断。
在计算中使用此函数时,注意其返回类型为 DOUBLE 可能引发精度问题,影响最终准确性:
SELECT ROUND(4/7, 4) - ROUND(3/7, 4); -- 结果:0.14280000000000004
SELECT ROUND(4/7, 4)::DECIMAL(8,4) - ROUND(3/7, 4)::DECIMAL(8,4); -- 结果:0.1428
语法
ROUND( <x, d> )
示例
SELECT ROUND(0.123, 2);
┌─────────────────┐
│ round(0.123, 2) │
├─────────────────┤
│ 0.12 │
└─────────────────┘