|
Oracle 数值数据类型最多可存储 38 个字节的精度。当将 Oracle 数值转换
为公共语言运行库数据类型时,小数点后边的位数可能过多,这会导致此错误。
解决方法:
使用round()函数:
例如:select min(pval),max(pval),round(avg(pval),5) from hvm_data_dga .
round(avg(pval),5) 使数值小数点后按照四舍五入保留5位。
select round(32/14, 3) from dual;
输出结果:2.286
www.2cto.com
select round(32/14, 2) from dual;
输出结果:2.29
注:用avg函数进行平均运算时会忽略空值(即最终出现的平均值不对[如果原始数据中存在空值的话]),可以这样
子来解决:avg(nvl(comm,0))或者sum(comm)/count(*)
|
|