日期:2014-05-16 浏览次数:20536 次
oracle round(x[,y])和trunc(x[,y])区别 1.round(x[,y])是表示四舍五入, 例如:5452.1256 保留三位小数就等于: 5452.126 2.trunc(x[,y])是表示不四舍入 例如:4125.1266 保留二数小数就等于: 4125.12 虽然第三位是6,但也不会进入,因为他不是表示四舍五入的计算 再以oralce的例子解释 select trunc(5555.66666,2.1),trunc(555588888.66666,-3.6),trunc(5555.033333) from dual; 返回:5555.66 555588000 5555 (保留小数一律是转换成整数,再表示保留的小数,也是就用ceil函数先ceil(2.1)=2,再表示保留2位小数) 第一个数是5555.6666 保留二个小数,虽然第三位是6,但也不有进一 第二个数是负数,表示整数部分从右往左保留,从整数第三位开始的右边全部去掉,所以最后的结果就是555588000,[至于为什么是这样,我也不知道^_^]; 第三个5555.033333,没有保留数,也就是0位保留,所以变成了的整数5555?