--四舍五入,保留N位小数
SELECT cast(round((WOV.LAST_UNIT_COMPLETION_DATE-WOV.FIRST_UNIT_START_DATE)*24,1) as numeric(10,1)),
WOV.LAST_UNIT_COMPLETION_DATE,WOV.FIRST_UNIT_START_DATE
FROM WIP_OPERATIONS_V WOV
SELECT cast(round(122.5255,2) as numeric(5,2))
FROM dual; --结果:122.53
SELECT round(122.5255,2)
FROM dual;--结果:122.53
SELECT cast(round(122,2) as numeric(5,2))
FROM dual;
SELECT CAST(122.123 as numeric(10,2))
FROM dual;
SQL数值四舍五入小数点后保留2位
1.round() 函数是四舍五入用,第一个参数是我们要被操作的数据,第二个参数是设置我们四舍五入之后小数点后显示几位。
2.numeric 函数的2个参数,第一个表示数据长度,第二个参数表示小数点后位数。
例如: www.2cto.com
select cast(round(12.5,2) as numeric(5,2)) 结果:12.50
select cast(round(12.555,2) as numeric(5,2)) 结果:12.56
select cast(round(122.5255,2) as numeric(5,2)) 结果:122.53
select cast(round(1222.5255,2) as numeric(5,2)) 结果:报错了! 原因是:1222.5255,整数位是4,小数位是2,加起来4+2=6,超出了numeric设置的5位,所以为了保险,可以增减numeric的参数,例如numeric(20,2)。