Справочник по функциям

LOG10

Аналог в MySQL:

Возвращает десятичный логарифм числа.

PostgreSQL 17.5
LOG10(num)

Параметры

numnumeric | double precision
Положительное число

Возвращаемое значение

Число того же типа, что и num (double precision или numeric); для 0 и отрицательных чисел — ошибка

Примеры

Логарифм 1000 и 0.01

PostgreSQL 17.5
SELECT LOG10(1000) AS log_1000,
	LOG10(0.01) AS log_hundredth;
log_1000log_hundredth
3-2.0000000000000000

Количество цифр в цене

PostgreSQL 17.5
SELECT unit_price,
	FLOOR(LOG10(unit_price)) + 1 AS digits
FROM Payments
ORDER BY unit_price DESC
LIMIT 5;
unit_pricedigits
660005
100005
55004
22004
21004

Подробности

Это то же, что LOG(num) с одним аргументом. Через LOG10 удобно считать количество цифр в положительном целом числе: FLOOR(LOG10(n)) + 1.

Смотрите также