PLSQL LOG函数用于返回n基m的对数。 LOG函数接受两个用于计算对数值的参数。 LOG函数返回数字数据类型的值。
此函数将任何数字数据类型以及可以隐式转换为数字数据类型的任何非数字数据类型作为参数。无论如何,如果参数为BINARY_FLOAT或BINARY_DOUBLE,则LOG函数返回BINARY_DOUBLE,否则返回数字。
用法:
LOG( m, n )
使用的参数:
m –用于指定基本号码。它应该是除0和1外的任何正数值。
n –用于指定需要以特定底数计算其对数值的数字。它应该是一个正数值。
返回值:
PLSQL中的LOG函数返回一个数字值。
支持的Oracle /PLSQL版本:
甲骨文12c
甲骨文11g
甲骨文10g
甲骨文9i
甲骨文8i
示例1:在LOG函数中使用正数值作为参数。
DECLARE
Test_Number1 number := 9;
Test_Number2 number := 3;
BEGIN
dbms_output.put_line(LOG(Test_Number1,
Test_Number2));
END;
输出:
0.5
示例2:在LOG函数中使用正数值作为参数。
DECLARE
Test_Number1 number := 3;
Test_Number2 number := 9;
BEGIN
dbms_output.put_line(LOG(Test_Number1,
Test_Number2));
END;
输出:
2
示例3:在LOG函数的两个参数中使用相同的正数值。
DECLARE
Test_Number1 number := 3;
Test_Number2 number := 3;
BEGIN
dbms_output.put_line(LOG(Test_Number1,
Test_Number2));
END;
输出:
1
示例4:在LOG函数的基值参数中使用零。
DECLARE
Test_Number1 number := 0;
Test_Number2 number := 3;
BEGIN
dbms_output.put_line(LOG(Test_Number1,
Test_Number2));
END;
输出:
numeric or value error
上面的示例引发错误,因为LOG函数没有将0和1作为自变量的基值。
示例5:在选择查询中使用LOG功能。
SELECT LOG(2, 8) "Log base 2 of 8" FROM DUAL;
输出:
3
优点:
LOG函数接受任何数字数据类型以及任何非数字数据类型作为可以隐式转换为数字数据类型的参数。