请教各位,oracle 保留两位小数,但不用四舍五入,不能转换成字符,还要是数字,代码是什么?

解决方案 »

  1.   

    trunc(x[,y])
    【功能】返回x按精度y截取后的值
    【参数】x,y,数字型表达式,如果y不为整数则截取y整数部分,如果y>0则截取到y位小数,如果y小于0则截取到小数点向左第y位,小数前其它数据用0表示。
    【返回】数字
      

  2.   

    代码请参考:SELECT TRUNC(15.79,1) "Truncate" FROM DUAL;  Truncate
    ----------
          15.7SELECT TRUNC(15.79,-1) "Truncate" FROM DUAL;  Truncate
    ----------
            10
      

  3.   


    --四舍五入
    select round(1.66,1) r_num from dual  r_num
    -----------
      1.7
    select round(1.66,0) r_num from dual  r_num
    -----------
      2
      

  4.   

    trunc()是直接截断,round()会四舍五入
      

  5.   

    trunc()是直接截断,round()会四舍五入
      

  6.   

    trunc(x[,y])
    【功能】返回x按精度y截取后的值
    【参数】x,y,数字型表达式,如果y不为整数则截取y整数部分,如果y>0则截取到y位小数,如果y小于0则截取到小数点向左第y位,小数前其它数据用0表示。
    【返回】数字