【SQL】数值型函数

1、 CEIL

语法:CEIL(n)

作用:取大于等于数值n的最小整数

SQL> select ceil(9.1),ceil(9.9),ceil(9) from dual;

 CEIL(9.1)  CEIL(9.9)    CEIL(9)
---------- ---------- ----------
        10         10          9


2、 FLOOR

语法:FLOOR(n)

作用:取小鱼等于数值n的最大整数

SQL> select floor(9.9),floor(9.1),floor(9) from dual;

FLOOR(9.9) FLOOR(9.1)   FLOOR(9)
---------- ---------- ----------
         9          9          9


3、 TRUNC

语法:TRUNC(x,[,y])

x:被截断的数值

y:小数点后面的位数,缺省为0,即保留整数。负值表示在小数点左边|y|位截断

1)保留整数

SQL> select trunc(3.1415) from dual;

TRUNC(3.1415)
-------------
            3

2)小数点后面保留2位

SQL> select trunc(3.1415,2) from dual;

TRUNC(3.1415,2)
---------------
           3.14

3)在小数点左边第一位截断

SQL> select trunc(99.99,-1) from dual;

TRUNC(99.99,-1)
---------------
             90


4、 ROUND

语法:ROUND(x [,y])

用法与trunc相同,区别在于round四舍五入

1) 保留整数

SQL> select round(3.1415) from dual;

ROUND(3.1415)
-------------
            3

2) 保留小数点后三位

SQL> select round(3.1415,3) from dual;

ROUND(3.1415,3)
---------------
          3.142

3) 保留整数

SQL> select round(9.66,-1) from dual;

ROUND(9.66,-1)
--------------
            10


5、 MOD

语法:MOD(n1,n2)

返回n1除以n2的余数,如果n2是0,则返回n1

SQL> select mod(10,3),mod(3,3),mod(2,3),mod(9,0) from dual;

 MOD(10,3)   MOD(3,3)   MOD(2,3)   MOD(9,0)
---------- ---------- ---------- ----------
         1          0          2          9


6、 ABS

语法:ABS(value)

返回value的绝对值

SQL> select abs(-1) from dual;

   ABS(-1)
----------
         1


7、 EXP

语法:EXP(value)

返回e的value次幂

SQL> select exp(2) from dual;

    EXP(2)
----------
 7.3890561


8、 SIGN

语法:SIGN(value)

根据value值为正、负、零 返回 1、-1、0

drz@SCOTT> select sign(4) from dual;

   SIGN(4)
----------
         1


9、 POWER

语法:POWER(value,exponent)

返回value的exponent次幂

SQL>  select power(2,2) from dual;

POWER(2,2)
----------
         4


10、 SQRT

语法:SQRT(value)

返回value的平方根

SQL> select sqrt(4) from dual;

   SQRT(4)
----------
         2

原文地址:https://www.cnblogs.com/NextAction/p/7366645.html