В MySQL, LOG()
функцията връща естествения логаритъм на определена стойност.
Вие предоставяте посочената стойност като аргумент при извикване на функцията.
Синтаксис
Тази функция може да се използва с един или два аргумента. Използването на един аргумент изглежда така:
LOG(X)
Където X
е стойността, за която искате да се върне естественият логаритъм.
Ако X
е по-малко или равно на 0.0E0, функцията връща NULL
и се генерира предупреждение.
Може да се използва и с два аргумента, като този:
LOG(B,X)
В този случай функцията връща логаритъма на X
към основата B
. Ако X
е по-малко или равно на 0, или ако B
е по-малко или равно на 1, след което NULL
се връща.
Пример 1 – Един аргумент
Ето основен пример, за да демонстрирате как работи тази функция с един аргумент.
SELECT LOG(3);
Резултат:
+--------------------+ | LOG(3) | +--------------------+ | 1.0986122886681098 | +--------------------+
И ето още един пример, използващ различна стойност.
SELECT LOG(0.3);
Резултат:
+---------------------+ | LOG(0.3) | +---------------------+ | -1.2039728043259361 | +---------------------+
Пример 2 – Отрицателна стойност
Ето пример за предаване на отрицателна стойност.
SELECT LOG(-3);
Резултат:
+---------+ | LOG(-3) | +---------+ | NULL | +---------+
Този пример връща стойност NULL, защото предоставеният аргумент е по-малък от 0.0E0.
Пример 3 – нула
Ето пример за предаване на нула като аргумент (получаваме същия резултат като предишния пример).
SELECT LOG(0);
Резултат:
+--------+ | LOG(0) | +--------+ | NULL | +--------+
Пример 4 – Изрази
Можете също да предавате изрази като този:
SELECT LOG(2+3);
Резултат:
+--------------------+ | LOG(2+3) | +--------------------+ | 1.6094379124341003 | +--------------------+
Пример 5 – Два аргумента
Ето пример, за да демонстрирате как работи тази функция с два аргумента.
SELECT LOG(10, 100);
Резултат:
+--------------+ | LOG(10, 100) | +--------------+ | 2 | +--------------+
И използвайки друг пример:
SELECT LOG(100, 10);
Резултат:
+--------------+ | LOG(100, 10) | +--------------+ | 0.5 | +--------------+
Пример 6 – резултат NULL
Както споменахме, ако първият аргумент е 1 или по-малко, се връща стойност NULL.
SELECT LOG(1, 10);
Резултат:
+------------+ | LOG(1, 10) | +------------+ | NULL | +------------+
И стойност NULL също се връща, ако вторият аргумент е равен на нула или по-малко:
SELECT LOG(10, 0);
Резултат:
+------------+ | LOG(10, 0) | +------------+ | NULL | +------------+
MySQL също има LN()
функция, която е синоним на LOG()
функция (но само с помощта на синтаксис с един аргумент).
MySQL също има EXP()
функция, която е обратна на LOG()
функция при използване на синтаксис с един аргумент.