SQL LEAST函数的用法
LEAST是一种在结构化查询语言中用于显示指定输入中最小值的SQL数值函数。
LEAST函数的语法
SELECT LEAST(Number1, Number2, Number3, Number4, ……, NumberN) AS Alias_Name;
在LEAST语法中,我们需要传递那些我们想要找到最小值的数字。
在结构化查询语言中,我们也可以使用LEAST函数与表的列一起使用,如下面的代码块所示:
SELECT LEAST(Integer_column_Name1, Integer_column_Name1, Integer_column_Name1, Integer_column_Name1, ……., Integer_column_NameN,) AS Alias_Name FROM Table_Name;
在此语法中,我们需要定义要对其执行LEAST函数的表的名称和列。
LEAST函数的示例
示例1: 该示例返回指定数字中的最小值:
SELECT LEAST(1, 2, 5, 8) AS least_of_numbers;
输出:
least_of_numbers
---
1
示例2: 此示例返回指定数字中的最小值:
SELECT LEAST(22, 88, 98, 108, 55, 22, 45, 22) AS least_of_numbers;
输出:
least_of_numbers
---
22
示例3: 此示例返回给定输入值中的最小值:
SELECT LEAST(3, 12, 34, 8, 25) AS least_of_numbers;
输出:
least_of_numbers
---
3
示例4: 这个例子返回了255的最简表示:
SELECT LEAST(3.8, 3.45, 3.52, 3.82, 3.08, 3.62) AS least_of_numbers;
输出:
least_of_numbers
---
3.08
示例 5: 这个示例返回最小值:
SELECT LEAST(NULL) AS least_of_NULL;
输出:
least_of_numbers
---
Shows Error
示例 6: 这个示例使用LEAST函数与SQL表。
在这个示例中,我们将创建一个新表,通过该表我们将对表的列执行LEAST函数:
下面展示了在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.250, 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.500, 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.250, 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.250, 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.500, 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.750, 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.250, 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 和 Product_ID 列中使用了 LEAST 函数:
SELECT Product_ID, Product_Quantity, LEAST(Product_ID, Product_Quantity) AS least_of_Product_ID_Quantity FROM Product_Details
这个查询显示每个产品的产品ID和数量的最小值。
输出:
Product_ID | Product_Quantity | least_of_Product_ID_quantity |
---|---|---|
104 | 10.250 | 10.250 |
202 | 15.500 | 15.500 |
103 | 18.250 | 18.250 |
111 | 25.250 | 25.250 |
210 | 15.500 | 15.500 |
212 | 19.750 | 19.750 |
112 | 10.250 | 10.250 |
查询2: 以下SELECT查询使用了上述Product_Details表中的Selling_Price和Purchasing_Price列的LEAST函数:
SELECT Selling_Price, Purchasing_Price LEAST(Selling_Price, Purchasing_Price) AS least_of_Selling_Purchasing_Price FROM Product_Details;
这个查询显示每个产品的购买价格和销售价格的最小值。
输出:
Selling_Price | Purchasing_Price | least_of_Selling_PurchasingPrice |
---|---|---|
NULL | 945 | - |
75 | 45 | 45 |
NULL | 25 | - |
15 | 5 | 5 |
70 | 50 | 50 |
250 | 110 | 110 |
835 | 550 | 550 |
查询3: 下面的SELECT查询使用了上面Product_Details表中的Purchasing_Price和Product_ID列的LEAST函数:
SELECT Product_ID, Purchasing_Price, LEAST(Product_ID, Purchasing_Price) AS least_of_Product_ID_and_Purcasing FROM Product_Details;
这个查询显示每个产品的产品ID和购买价格中的最小值。
输出:
Product_ID | Purchasing_Price | least_of_Product_ID_and_Purchasing |
---|---|---|
104 | 945 | 104 |
202 | 45 | 45 |
103 | 25 | 25 |
111 | 5 | 5 |
210 | 50 | 50 |
212 | 110 | 110 |
112 | 550 | 112 |
LEAST函数与WHERE子句
在结构化查询语言中,我们也可以在SELECT语句中使用LEAST函数与WHERE子句。
LEAST函数与WHERE子句的语法
SELECT LEAST(Integer_column_Name1, Integer_column_Name1, Integer_column_Name1, Integer_column_Name1, ……., Integer_column_NameN) AS Alias_Name FROM Table_Name WHERE [condition];
在这种语法中,我们必须在WHERE子句中指定条件,以便在筛选的行上执行最小函数。
带有WHERE子句的LEAST函数示例
让我们使用上述Product_Details表来理解带有最小函数的where子句。
查询: 以下SELECT查询在上述Product_Details表的Product_Quantity和Product_ID列上使用WHERE子句与LEAST函数:
SELECT Product_ID, Product_Quantity, LEAST(Product_ID, Product_Quantity) AS least_of_Product_ID_Quantity FROM Product_Details WHERE Product_Quantity > 10.250;
这个查询显示了产品ID和数量最小的产品的数量大于10.250的产品。
输出:
Product_ID | Product_Quantity | least_of_Product_ID_quantity |
---|---|---|
202 | 15.500 | 15.500 |
103 | 18.250 | 18.250 |
111 | 25.250 | 25.250 |
210 | 15.500 | 15.500 |
212 | 19.750 | 19.750 |
LEAST函数与SUM函数
在结构化查询语言中,我们还可以在SELECT语句中使用LEAST函数与SUM SQL函数。
LEAST函数与WHERE子句的语法
SELECT LEAST(SUM(Integer_column_Name1), SUM(Integer_column_Name2), SUM(Integer_column_Name3), SUM(Integer_column_Name4), ……., SUM(Integer_column_NameN)) AS Alias_Name FROM Table_Name;
包含WHERE子句的LEAST函数示例
让我们使用上述Product_Details表来理解使用least函数的求和函数。
查询语句: 以下SELECT查询语句在上述Product_Details表的Product_Quantity和Product_ID列上使用了SUM函数和LEAST函数:
SELECT Product_ID, Product_Quantity, LEAST(SUM(Product_ID), SUM(Product_Quantity)) AS least_of_SUM_Product_ID_Quantity FROM Product_Details WHERE Product_Quantity > 10.250;
此查询显示了产品ID和数量之和的最小值。
输出:
least_of_SUM_Product_ID_quantity
---
114.75