–SQL函数:单行函数,多行函数(即分组函数)
–数字函数
DECLARE
v_abs NUMBER(6,2);
BEGIN
v_abs:=ABS(&NO);
dbms_output.put_line(‘绝对值:’||v_abs);
END;–ABS(n):该函数用于返回数字n的绝对值
SELECT ACOS(.3),ACOS(-.3) FROM dual;–ACOS(n):该函数用于返回数字n的反余弦值
DECLARE
v_asin NUMBER(6,2);
BEGIN
v_asin:=ASIN(0.8);
dbms_output.put_line(‘0.8的反正弦值:’||v_asin);
END;–ASIN(n):该函数用于返回数字n的反正弦值
SELECT ATAN(10.3),ATAN(-20.3) FROM dual;–ATAN(n):该函数用于返回数字n的反正切值
DECLARE
v_atan2 NUMBER(6,2);
BEGIN
v_atan2:=ATAN2(19,3);
dbms_output.put_line(‘19/3的反正切值:’||v_atan2);
END;–ATAN2(n,m):该函数用于返回数字n的反正切值
SELECT CEIL(15),CEIL(15.1) FROM dual;–CEIL(n):该函数用于返回大于等于数字n的最小整数
DECLARE
v_cos NUMBER(6,2);
BEGIN
v_cos:=COS(0.5);
dbms_output.put_line(‘0.5的余弦值:’||v_cos);
END;–COS(n):该函数用于返回数字n的余弦值
SELECT COSH(0) “0的双曲余弦值” FROM dual;–COSH(n):该函数用于返回数字n的双曲余弦值
DECLARE
v_exp NUMBER(6,2);
BEGIN
v_exp:=EXP(4);
dbms_output.put_line(‘e的4次幂:’||v_exp);
END;–EXP(n):该函数用于返回e的n次幂
SELECT FLOOR(15),FLOOR(15.1) FROM dual;–FLOOR(n):该函数用于返回小于等于数字n的最大整数
DECLARE
v_ln NUMBER(6,2);
BEGIN
v_ln:=LN(4);
dbms_output.put_line(‘4的自然对数:’||v_ln);
END;–LN(n):该函数用于返回数字n的自然对数
SELECT LOG(2,8),LOG(10,100) FROM dual;–LOG(m,n):该函数用于返回以数字m为底的数字n的对数
DECLARE
v_mod NUMBER(6,2);
BEGIN
v_mod:=MOD(10,3);
dbms_output.put_line(‘10除3的余数:’||v_mod);
END;–MOD(m,n):该函数用于取得两个数字相除后的余数
SELECT POWER(-2,3),POWER(2,-1) FROM dual;–POWER(m,n):该函数用于返回数字m的n次幂
/ROUND(n,[m]):该函数用于执行四舍五入计算;若省略m则四舍五入至整数位,若m是负数则四舍五入
到小数点前m位,若m是正数]则四舍五入到小数点后m位/
DECLARE
v_round NUMBER(6,2);
BEGIN
v_round:=ROUND(&NO,1);
dbms_output.put_line(‘四舍五入到小数点后一位:’||v_round);
END;
SELECT SIGN(-10),SIGN(0),SIGN(20) FROM dual;–SIGN(n):该函数用于检测数字的正负
DECLARE
v_sin NUMBER(6,2);
BEGIN
v_sin:=SIN(0.3);
dbms_output.put_line(‘0.3的正弦值:’||v_sin);
END;–SIN(n):该函数用于返回数字n的正弦值
SELECT SINH(.5) FROM dual;–SINH(n):该函数用于返回数字n的双曲正弦值
DECLARE
v_sqrt NUMBER(6,2);
BEGIN
v_sqrt:=SQRT(10);
dbms_output.put_line(‘10的平方根:’||v_sqrt);
END;–SQRT(n):该函数用于返回数字n的平方根
SELECT TAN(45 * 3.14159265359/180) FROM dual;–TAN(n):该函数用于返回数字n的正切值
DECLARE
v_tanh NUMBER(6,2);
BEGIN
v_tanh:=TANH(10);
dbms_output.put_line(‘10的双曲正切值:’||v_tanh);
END;–TANH(n):该函数用于返回数字n的双曲正切值
/TRUNC(n,[m]):该函数用于截取数字。若省略数字m则将数字n的小数部分截去;
若数字m是正数则将数字n截取至小数点后的第m位;若数字m是负数则将数字n截取至小数点的前m位/
SELECT TRUNC(45.926),TRUNC(45.926,1),TRUNC(45.926,-1) FROM dual;