《Oracle Database编程指南》13-01:数值函数

1、定义

数值函数(Numeric Functions)接受数字输入并返回数字值。大多数数值函数返回精确到38位小数的数值。超越函数COS、COSH、EXP、LN、LOG、SIN、SINH、SQRT、TAN和TANH精确到36位小数。超越函数ACOS、ASIN、ATAN和ATAN2精确到30位小数。

超越函数(Transcendental Functions),指的是变量之间的关系不能用有限次加、减、乘、除、乘方、开方运算表示的函数。例如,对数函数和指数函数即为超越函数。 超越函数这个名词通常被拿来描述三角函数,例如正弦、余弦、正割、余割、正切、余切等。

2、分类

数值函数为:

  • ABS
  • ACOS
  • ASIN
  • ATAN
  • ATAN2
  • BITAND
  • CEIL
  • COS
  • COSH
  • EXP
  • FLOOR
  • LN
  • LOG
  • MOD
  • NANVL
  • POWER
  • REMAINDER
  • ROUND (number)
  • SIGN
  • SIN
  • SINH
  • SQRT
  • TAN
  • TANH
  • TRUNC (number)
  • WIDTH_BUCKET

3、案例代码

在下方的案例代码中,我们将使用DUAL表,它是一个“伪表”,可以用来测试函数和表达式。

/*
作者:AT阿宝哥
日期:2016年9月18日
愿景:参考官方资料,做最好的课程,成就更多职业人!
邮箱:[email protected]
CSDN:https://blog.csdn.net/goldentec
:https://www.jianshu.com/u/8a6075d7a2e0
说明:

注意:
    
*/
-------------------------------------------------------------------------------

--求绝对值
SELECT  abs(-15)  FROM  dual;

--求正弦
SELECT  sin(30 * 3.14159265359/180) FROM  dual;

--四舍五入
select  ROUND(45.926, 2)  from  Dual;

--截断
select  TRUNC(45.926, 2)  from  Dual;

--取余数
select  MOD(1600, 300)  from  Dual;

--举例:计算所得税
SELECT SAL , Mod(SAL,3500) * 0.2 FROM emp Where SAL > 3500;

-------------------------------------------------------------------------------


你可能感兴趣的:(《Oracle Database编程指南》13-01:数值函数)