MySQL 中的 LOG(X) 函数用来计算指定参数的自然对数。
LOG(X), LOG(B,X)
B 对数的底数,如:LOG(2, 10) 表示计算 10 以 2 为底的对数
X 要计算对数的数字
(1)如果使用一个参数调用,则该函数返回 X 的自然对数。如果 X 小于或等于 0.0E0,该函数返回 NULL 并报告“对数参数无效”的警告。
该函数的逆函数(当使用单个参数调用时)是 EXP() 函数。如下:
mysql> select LOG(2); +--------------------+ | LOG(2) | +--------------------+ | 0.6931471805599453 | +--------------------+ 1 row in set (0.04 sec) mysql> select LOG(-2); +---------+ | LOG(-2) | +---------+ | NULL | +---------+ 1 row in set (0.04 sec)
(2)如果使用两个参数调用,此函数返回 X 的以 B 为底的对数。如果 X 小于或等于 0,或者如果 B 小于或等于 1,则返回 NULL。
mysql> select LOG(2, 65536); +---------------+ | LOG(2, 65536) | +---------------+ | 16 | +---------------+ 1 row in set (0.04 sec) mysql> select LOG(10, 100); +--------------+ | LOG(10, 100) | +--------------+ | 2 | +--------------+ 1 row in set (0.05 sec) mysql> select LOG(1, 100); +-------------+ | LOG(1, 100) | +-------------+ | NULL | +-------------+ 1 row in set (0.04 sec)
LOG(B,X) 等价于 LOG(X) / LOG(B)。