SQL Server Tutorial SQL Server Advanced SQL Server Database SQL Server References

SQL Server LOG() Function



The SQL Server (Transact-SQL) LOG() function returns the natural logarithm or logarithm to the specified base of a given number. In special cases it returns the following:

  • If the number is less than or equal to 0, then an error is returned.
  • If the base is less than or equal to 0, then an error is returned.
  • If the base is equal to 1, then an error is returned.

Syntax

/* natural logarithm of number */
LOG(number)

/* logarithm of number to the specified base */
LOG(number, base)

Parameters

number Required. Specify the number. Must be greater than 0.
base Specify the number. Must be greater than 0 and not equal to 1.

Return Value

Returns the natural logarithm or logarithm to the specified base of a given number.

Example 1:

The example below shows the usage of LOG() function.

SELECT LOG(1);
Result: 0

SELECT LOG(1.5);
Result: 0.4054651081081644

SELECT LOG(5);
Result: 1.6094379124341003

SELECT LOG(4, 3);
Result: 1.2618595071429148

SELECT LOG(0.8, 0.7);
Result: 0.6256216061886871

SELECT LOG(10, 0.5);
Result: -3.3219280948873626

SELECT LOG(25, 5);
Result: 2

Example 2:

Consider a database table called Sample with the following records:

Datax
Data 10.5
Data 21
Data 35
Data 410
Data 550

The statement given below can be used to calculate the base-10 logarithm of column x.

SELECT *, LOG(x, 10) AS LOG_Value FROM Sample;

This will produce the result as shown below:

DataxLOG_Value
Data 10.5-0.30102999566398114
Data 210
Data 350.6989700043360187
Data 4101
Data 5501.6989700043360185

Example 3:

Consider a database table called Sample with the following records:

Dataxy
Data 10.52
Data 212
Data 352
Data 41010
Data 55010

To calculate the logarithm of records of column x with base as records of column y, the following query can be used:

SELECT *, LOG(x, y) AS LOG_Value FROM Sample;

This will produce the result as shown below:

DataxyLOG_Value
Data 10.52-1
Data 2120
Data 3522.321928094887362
Data 410101
Data 550101.6989700043360185

❮ SQL Server Functions