Oracle PL/SQL/Numeric Math Functions/LOG
Содержание
Get the log of 8, base 2
<source lang="sql">
SQL> -- create demo table SQL> create table TestTable(
2 ID VARCHAR2(4 BYTE) NOT NULL, 3 MyName VARCHAR2(10 BYTE), 4 MyDate DATE, 5 MyNumber Number(8,2) 6 ) 7 /
Table created. SQL> SQL> SQL> insert into TestTable (ID, MyName, MyDate, MyNumber) values("1","Alison",to_date("19960711","YYYYMMDD"),12.12); 1 row created. SQL> insert into TestTable (ID, MyName, MyDate, MyNumber) values("1","Alison",to_date("19970622","YYYYMMDD"),1.12); 1 row created. SQL> insert into TestTable (ID, MyName, MyDate, MyNumber) values("1","Alison",to_date("19980513","YYYYMMDD"),22.1); 1 row created. SQL> insert into TestTable (ID, MyName, MyDate, MyNumber) values("1","Alison",to_date("19990624","YYYYMMDD"),2.12); 1 row created. SQL> insert into TestTable (ID, MyName, MyDate, MyNumber) values("1","Alison",to_date("20000415","YYYYMMDD"),2.1); 1 row created. SQL> SQL> SQL> select * from TestTable
2
SQL> SQL> --Get the log of 8, base 2 SQL> SELECT LOG(2,8), LOG(2,MyNumber) FROM TestTable;
LOG(2,8) LOG(2,MYNUMBER)
---------------
3 3.59931779 3 .163498732 3 4.46597446 3 1.08406426 3 1.07038933
SQL> SQL> SQL> SQL> SQL> SQL> SQL> drop table TestTable; Table dropped. SQL>
</source>
LOG(2, 5)
<source lang="sql">
SQL> select LOG(2, 5) from dual;
LOG(2,5)
2.32192809 SQL> SQL> SQL>
</source>
LOG: The first argument is the base, and the second is the number that you want to take the log of
<source lang="sql">
SQL> SQL> SQL> -- create demo table SQL> create table TestTable(
2 ID VARCHAR2(4 BYTE) NOT NULL, 3 MyName VARCHAR2(10 BYTE), 4 MyDate DATE, 5 MyNumber Number(8,2) 6 ) 7 /
Table created. SQL> SQL> SQL> insert into TestTable (ID, MyName, MyDate, MyNumber) values("1","Alison",to_date("19960711","YYYYMMDD"),12.12); 1 row created. SQL> insert into TestTable (ID, MyName, MyDate, MyNumber) values("1","Alison",to_date("19970622","YYYYMMDD"),2.12); 1 row created. SQL> insert into TestTable (ID, MyName, MyDate, MyNumber) values("1","Alison",to_date("19980513","YYYYMMDD"),22.1); 1 row created. SQL> insert into TestTable (ID, MyName, MyDate, MyNumber) values("1","Alison",to_date("19990624","YYYYMMDD"),2.12); 1 row created. SQL> insert into TestTable (ID, MyName, MyDate, MyNumber) values("1","Alison",to_date("20000415","YYYYMMDD"),2.1); 1 row created. SQL> SQL> SQL> select * from TestTable
2
SQL> SQL> --LOG: The first argument is the base, and the second is the number that you want to take the log of SQL> SQL> SELECT LOG(MyNumber, 2) FROM TestTable; LOG(MYNUMBER,2)
.277830427 .922454538 .223915297 .922454538 .934239509
SQL> SQL> SQL> SQL> SQL> drop table TestTable;
</source>
LOG(x, y):Returns the logarithm, base x, of y
<source lang="sql">
SQL> --LOG(x, y):Returns the logarithm, base x, of y. SQL> SQL> select LOG(2, 4) from dual;
LOG(2,4)
2
SQL>
</source>