Oracle 10g SQL函数:数字函数
时间:2011-01-19 来源:mxcjwl314
declare
v_num number(6, 2);
begin
v_num := abs(&no);
dbms_output.put_line('绝对值:' || v_num);
end;
--acos(n):返回数字n的反余弦值,输入值的范围是-1~1,输出值的单位为弧度
select acos(0.5), acos(-0.5) from dual;
--asin(n):返回数字n的反正弦值,输入值的范围是-1~1,输出值的单位为弧度
select asin(0.5), asin(-0.5) from dual;
--atan(n):返回数字n的反正切值,输入值可是是任何数字,输出值的单位为弧度
select atan(10) from dual;
--atan2(n,m):返回数字n除以数字m的反正切值。输入值除了m不能为0以外,输出值的单位为弧度
select atan2(10,3) from dual;
--ceil(n):返回大于等于数字n的最小整数
select ceil(10),ceil(10.5) from dual;
输出:10 11
--cos(n):返回数字n(以弧度表示的角度值)的余弦值
select cos(0.5) from dual;
--cosh(n):返回数字n的双曲余弦值
select cosh(0.5) from dual;
--exp(n):返回e的n次幂(e=2.71828183...)
select exp(10) from dual;
--floor(n):返回小于等于数字n的最大整数
select floor(10),floor(10.5) from dual;
输出:10 10
--ln(n):返回数字n的自然对数(n>0)
select ln(10) from dual;
--log(m,n):返回以数字m为底的数字n的对数,数字m可以是除0和1以外的任何正整数,数字n可以是任何正整数
select log(10, 100) from dual;
--mod(m,n):用于取得两个数字相除后的余数。如果数字n为0,则返回结果为m
select mod(10,3) from dual;
--power(m,n):返回数字m的n次幂,底数m和指数n可以是任意数字
select power(-10,2) from dual;
--round(n,[m])执行四舍五入元算,如果省略m,则四舍五入至整数位;如果m是负数,则四舍五入到小数点前m位;如果m是正数,则四舍五入至小数点后m位
select round(10.58) from dual;
输出:11
select round(10.58,-2) from dual;
输出:0
select round(10.58, 1) from dual;
输出:10.6
--sign(n):检测数字的正负。n<0返回-1;n=0返回0;n>0返回1
select sign(10), sign(0), sign(-10) from dual;
--sin(n):返回数字n(以弧度表示的角)的正弦值
select sin(45) from dual;
--sinh(n):返回数字n的双曲正弦值
select sinh(45) from dual;
--tan(n):返回数字n(以弧度表示的角)的正切值
select tan(45) from dual;
--tanh(n):返回数字n的双曲正切值
select tanh(45) from dual;
--sqrt(n):返回数字n的平方根(n>0)
select sqrt(100) from dual;
--trunc(n,[m])用于截取数字。用法同round
select trunc(10.58) from dual;
输出:10
select trunc(10.58, 1) from dual;
输出:10.5
select trunc(10.58, -1) from dual;
输出:10