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 |
+------------+----------------+--------------+---------------+---------------+----------------------+