📜  MySQL 中的 LOG()函数

📅  最后修改于: 2022-05-13 01:54:56.019000             🧑  作者: Mango

MySQL 中的 LOG()函数

MySQL中的LOG ()函数用于计算特定数的自然对数。该数字必须 >0,否则将返回 NULL。

句法 :

LOG(X)

参数:此方法接受一个如上所述和如下所述的参数:

  • X :我们要计算其对数值的数字。它应该是正数。

返回:它返回给定数字 x 的自然对数。

示例 1:使用 LOG()函数求给定数字的对数。

SELECT LOG(5) AS Log_Val ;

输出 :

Log_Val
1.6094379124341003

示例 2:使用 LOG()函数计算 0 的对数。

SELECT LOG(0) AS Log_Val ;

输出 :

Log_Val
NULL

示例 3: LOG函数还可用于查找列数据列的对数值。为了演示创建一个名为的表。

产品 :

CREATE TABLE Product(
    Product_id INT AUTO_INCREMENT, 
    Product_name VARCHAR(100) NOT NULL,
    Buying_price DECIMAL(13, 2) NOT NULL,
    Selling_price DECIMAL(13, 2) NOT NULL,
    Service_grade Decimal(6, 2) NOT NULL,
    PRIMARY KEY(Product_id)
);

现在向 Product 表插入一些数据:

INSERT INTO 
    Product(Product_name, Buying_price, Selling_price, Service_grade)
VALUES
    ('Touring Bike', 2019.00, 3009.6, 0.89 ),
    ('Mountain Bike', 3019.50, 4000.56, 1.00 ),
    ('Road Bike', 1019.20, 2000.56, -0.89 ),
    ('Road Bicycle', 1019.50, 1500.56, -1.50 ),
    ('Racing Bicycle', 3019.50, 4000.56, 2.00) ;

所以,我们的表看起来像:

mysql> Select * from Product;
+------------+----------------+--------------+---------------+---------------+
| Product_id | Product_name   | Buying_price | Selling_price | Service_grade |
+------------+----------------+--------------+---------------+---------------+
|          1 | Touring Bike   |      2019.00 |       3009.60 |          0.89 |
|          2 | Mountain Bike  |      3019.50 |       4000.56 |          1.00 |
|          3 | Road Bike      |      1019.20 |       2000.56 |         -0.89 |
|          4 | Road Bicycle   |      1019.50 |       1500.56 |         -1.50 |
|          5 | Racing Bicycle |      3019.50 |       4000.56 |          2.00 |
+------------+----------------+--------------+---------------+---------------+
5 rows in set (0.00 sec)

现在,我们将找到 Service_grade 列中所有记录的对数值。

Select Product_id,  
 Product_name,  
 Buying_price,  
 Selling_price,  
 Service_grade,
 LOG(Service_grade) AS GRADELOG  
 FROM Product;

输出 :

+------------+----------------+--------------+---------------+---------------+----------------------+
| Product_id | Product_name   | Buying_price | Selling_price | Service_grade | GRADELOG             |
+------------+----------------+--------------+---------------+---------------+----------------------+
|          1 | Touring Bike   |      2019.00 |       3009.60 |          0.89 | -0.11653381625595151 |
|          2 | Mountain Bike  |      3019.50 |       4000.56 |          1.00 |                    0 |
|          3 | Road Bike      |      1019.20 |       2000.56 |         -0.89 |                 NULL |
|          4 | Road Bicycle   |      1019.50 |       1500.56 |         -1.50 |                 NULL |
|          5 | Racing Bicycle |      3019.50 |       4000.56 |          2.00 |   0.6931471805599453 |
+------------+----------------+--------------+---------------+---------------+----------------------+