一对儿程序猿 2019-10-20
ROUND(列名|表达式,n)
idle> select round(458.734,0),round(458.734,1),round(458.734,-1) from dual;
ROUND(458.734,0) ROUND(458.734,1) ROUND(458.734,-1)
---------------- ---------------- -----------------
      459    458.7 460
idle>
TRUNC(列名|表达式,n)
截取到小数点后的n位
idle> select trunc(458.734,0),trunc(458.734,1),trunc(458.734,-1) from dual
TRUNC(458.734,0) TRUNC(458.734,1) TRUNC(458.734,-1)
---------------- ---------------- -----------------
      458    458.7 450
idle>
MOD(m,n)
求m除以n的余数
idle> select mod(10,3) from dual;
 MOD(10,3)
----------
  1
idle>
idle> select mod(3,10) from dual;
 MOD(3,10)
----------
  3
idle>
CEIL 取整 向上补1  和trunc相反
idle> select ceil(457.001) from dual;   后面只要有小数,就进一
CEIL(457.001)
-------------
   458
idle>
power(底数,指数) 求次方
SQL> select power(10,3) from dual;
POWER(10,3)
-----------
       1000
SQL>Oracle中round() 函数与trunc()函数的比较,非常实用。x,y,数字型表达式,如果y不为整数则截取y整数部分,如果y>0则四舍五入为y位小数,如果y小于0则四舍五入到小数点向左第y位。