SQL LOG2函数
LOG2是SQL中的一个数字函数,它返回以2为底的数的自然对数。
LOG2函数语法
SELECT LOG2(Number) AS Alias_Name;
在LOG2语法中,我们需要传入要查找对数的十进制数。
在结构化查询语言中,我们还可以使用LOG2函数与表的列一起使用,如下所示:
SELECT LOG2(column_Name) AS Alias_Name FROM Table_Name;
在这个语法中,我们必须定义我们想要执行LOG2函数的表的名称和列。
LOG2函数示例
示例1: 这个示例获取1的对数2:
SELECT LOG2(1) AS Logarithm_of_1;
输出:
Logarithm_of_1
---
0
示例2: 该示例返回10的以2为底的对数结果:
SELECT LOG2(10) AS Logarithm_of_10bybase_2;
输出:
Logarithm_of_10bybase_2
---
3.322
示例3: 这个示例返回以2为底数8的对数:
SELECT LOG2(8) AS Logarithm_of_8bybase_2;
输出:
Logarithm_of_8bybase_2
---
3
示例 4: 此示例以2为底返回255的对数结果:
SELECT LOG2(255) AS Logarithm_of_255bybase_2;
输出:
Logarithm_of_255bybase_2
---
7.994
示例5: 此示例使用SQL表格中的LOG10函数。 在此示例中,我们将创建一个新表格,在该表格上执行LOG10函数以对表格的数值字段进行操作:
以下是在SQL中创建新表格的语法:
CREATE TABLE Name_of_New_Table
(
First_Column_of_table Data Type (character_size of First Column),
Second_Column_of_table Data Type (character_size of the Second column ),
Third_Column_of_table Data Type (character_size of the Third column),
.......,
Last_Column_of_table Data Type (character_size of the Last column)
);
以下CREATE语句创建用于存储产品价格和数量的 Product_Details 表:
CREATE TABLE Product_Details
(
Product_ID INT NOT NULL,
Product_Name Varchar(50),
Product_Quantity INT,
Purchasing_Price INT,
Selling_Price INT,
Release_Date Date,
Product_Rating INT
);
以下是多个INSERT查询语句,将产品的销售价格和购买价格记录插入Product_Details表中:
INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (104, P1, 10, 945, NULL, 2022-04-30, NULL);
INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (202, P4, 15, 45, 75, 2022-01-28, 5);
INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (103, P2, 18, 25, NULL, 2022-02-18, 4);
INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (111, P7, 25, 5, 15, 2021-12-25, 9);
INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (210, P6, 15, 50, 70, 2021-10-15, NULL);
INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (212, P8, 19, 110, 250, 2022-01-28, 4);
INSERT INTO Product_Details (Product_ID, Product_Name, Product_ Quantity Purchasing_Price, Selling_Price, Release_Date, Product_Rating) VALUES (112, P10, 10, 550, 835, 2022-04-11, NULL);
以下SELECT语句显示了上述 Product_Details 表中插入的记录:
SELECT * FROM Product_Details;
Product_ID | Product_Name | Product_Quantity | Purchasing_Price | Selling_Price | Release_Date | Product_Rating |
---|---|---|---|---|---|---|
104 | P1 | 10 | 945 | NULL | 2022-04-30 | NULL |
202 | P4 | 15 | 45 | 75 | 2022-01-28 | 5 |
103 | P2 | 18 | 25 | NULL | 2022-02-18 | 4 |
111 | P7 | 25 | 5 | 15 | 2021-12-25 | 9 |
210 | P6 | 15 | 50 | 70 | 2021-10-15 | NULL |
212 | P8 | 19 | 110 | 250 | 2022-01-28 | 4 |
112 | P10 | 10 | 550 | 835 | 2022-04-11 | NULL |
查询 1: 下面的 SELECT 查询使用了上述 Product_Details 表的 Product_Quantity 列的 LOG2 函数:
SELECT Product_ID, LOG2(Product_ID) AS LOG2_Value_of_Product_ID FROM Product_Details;
此查询显示每个产品的id的LOG2值。
Output:
Product_ID | LOG2_Value_of_Product_ID |
---|---|
104 | 6.7 |
202 | 7.658 |
103 | 6.687 |
111 | 6.794 |
210 | 7.714 |
212 | 7.714 |
112 | 6.807 |
查询2: 以下SELECT查询使用LOG2函数与上述Product_Details表的Purchasing_Price列:
SELECT Purchasing_Price, LOG2(Purchasing_Price) AS LOG2_Value_of_PurchasingPrice FROM Product_Details;
这个查询显示了每个产品购买价格的LOG2值。
输出:
Purchasing_Price | LOG2_Value_of_PurchasingPrice |
---|---|
945 | 9.884 |
45 | 5.492 |
25 | 4.644 |
5 | 2.322 |
50 | 5.644 |
110 | 6.781 |
550 | 9.103 |
查询3: 下面的SELECT查询使用了上面Product_Details表的Product_Rating列的LOG2函数:
SELECT LOG2(Product_Rating) AS LOG2_Value_of_productrating FROM Product_Details;
这个查询显示了上表中每个产品的评分的LOG2值。
输出结果:
Product_Rating | LOG2_Value_of_productrating |
---|---|
NULL | |
5 | 2.322 |
4 | 2 |
9 | 3.17 |
NULL | |
4 | 2 |
NULL |
查询4: 以下SELECT查询使用了上述Product_Details表中的Purchasing_Price和Selling_Price列的LOG2函数:
SELECT Selling_Price, LOG2(Selling_Price) AS LOG2_Value_of_SellingPrice FROM Product_Details;
此查询显示每个产品销售价格的LOG2值。
输出:
Selling_Price | LOG2_Value_of_SellingPrice |
---|---|
NULL | |
75 | 6.229 |
NULL | |
15 | 3.907 |
70 | 6.129 |
250 | 7.966 |
835 | 9.706 |