Поделиться через


LOG (Transact-SQL)

Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure конечной точке аналитики платформы Аналитики Azure Synapse Analytics (PDW) в Microsoft Fabric Хранилище в Microsoft Fabric

Возвращает естественный логарифм указанного выражения float в SQL Server.

Соглашения о синтаксисе Transact-SQL

Синтаксис

-- Syntax for SQL Server, Azure SQL Database  
  
LOG ( float_expression [, base ] )  
-- Syntax for Azure Synapse SQL 
  
LOG ( float_expression )  

Аргументы

float_expression
Выражение типа float или типа, который может быть неявно преобразован в тип float.

base
Необязательный целочисленный аргумент, который определяет основу для логарифма.

Область применения: SQL Server 2012 (11.x) и более поздних версий

Типы возвращаемых данных

float

Замечания

По умолчанию LOG() возвращает натуральный логарифм. Начиная с SQL Server 2012 (11.x), можно изменить базу логарифма на другое значение с помощью необязательного базового параметра.

Натуральный логарифм — это логарифм по основанию e, где e — это иррациональная константа, которая приблизительно равна 2,718281828.

Натуральный логарифм от экспоненты числа равен самому этому числу: LOG( EXP( n ) ) = n. Экспонента натурального логарифма числа равна самому этому числу: EXP( LOG( n ) ) = n.

Примеры

А. Вычисление логарифма числа.

В приведенном ниже примере вычисляется LOG для указанного выражения типа float.

DECLARE @var FLOAT = 10;  
SELECT 'The LOG of the variable is: ' + CONVERT(VARCHAR, LOG(@var));  
GO  

Вот результирующий набор.

-------------------------------------  
The LOG of the variable is: 2.30259  
  
(1 row(s) affected)  

B. Вычисление логарифма экспоненты числа.

В приведенном ниже примере вычисляется LOG для экспоненты числа.

SELECT LOG (EXP (10));  
  

Вот результирующий набор.

----------------------------------  
10  
(1 row(s) affected)  

Примеры: Azure Synapse Analytics и система платформы аналитики (PDW)

C. Вычисление логарифма числа

В приведенном ниже примере вычисляется LOG для указанного выражения типа float.

SELECT LOG(10);  

Вот результирующий набор.

----------------`  
 
2.30

См. также

Математические функции (Transact-SQL)
EXP (Transact-SQL)
LOG10 (Transact-SQL)