SELECT TRUNC(ROUND(156.00,-1),-1)      
FROM DUAL返回结果:160

解决方案 »

  1.   

    SELECT ROUND(156.00,-1),ROUND(154.00,-1),TRUNC(156.00,-1),TRUNC(154.00,-1)
    FROM DUAL楼主看下这个sql的结果。
    ROUND 和TRUNC 参数为负时都是向左截取到整数位,不同的是ROUND会四舍五,TRUNC直接截取
      

  2.   

    8、 round(x[,y]):四舍五入截取,如果y>0则截取小数,y<=0或不写则截取整数
    select round(5555.6666,2.1),round(5555.6666,-2.6),round(5555.6666) from dual
    返回结果为5555.67,5600,5556(注:此处2.1和2的结果是无区别的,同理-2.6和-2一样的结果)
    9、 trunc(x[,y]):不四舍五入截取
     select trunc(5555.66666,2.1),trunc(5555.66666,-2.6),trunc(5555.033333) from dual
     返回结果为5555.66,5500,5555