淘宝购物网站,投资公司名字大全集,什么叫vi形象设计,宜宾市城乡建设厅网站转载自 MySQL min()函数
MySQL MIN函数
MIN()函数返回一组值中的最小值。MIN()函数在某些情况下非常有用#xff0c;例如找到最小的数字#xff0c;选择最便宜的产品#xff0c;获得最低的信用额度等。
以下说明MIN()函数的语法#xff1a;
MIN(DISTINCT expression);…转载自 MySQL min()函数
MySQL MIN函数
MIN()函数返回一组值中的最小值。MIN()函数在某些情况下非常有用例如找到最小的数字选择最便宜的产品获得最低的信用额度等。
以下说明MIN()函数的语法
MIN(DISTINCT expression);如果指定DISTINCT运算符则MIN函数返回不同值的最小值与省略DISTINCT相同。换句话说DISTINCT运算符对MIN函数没有任何影响它只是为了ISO兼容性。
请注意DISTINCT运算符在其他聚合函数(如SUMAVG和COUNT)中生效。
MySQL MIN函数示例
我们来看看示例数据库(yiibaidb)中的products表其结构如下表所示 -
mysql desc products;
-------------------------------------------------------------------------
| Field | Type | Null | Key | Default | Extra |
-------------------------------------------------------------------------
| productCode | varchar(15) | NO | PRI | | |
| productName | varchar(70) | NO | MUL | NULL | |
| productLine | varchar(50) | NO | MUL | NULL | |
| productScale | varchar(10) | NO | | NULL | |
| productVendor | varchar(50) | NO | | NULL | |
| productDescription | text | NO | | NULL | |
| quantityInStock | smallint(6) | NO | | NULL | |
| buyPrice | decimal(10,2) | NO | | NULL | |
| MSRP | decimal(10,2) | NO | | NULL | |
| stockValue | double | YES | | NULL | STORED GENERATED |
-------------------------------------------------------------------------
10 rows in set要查询获得products表中最便宜的产品请使用以下查询
SELECT MIN(buyPrice)
FROMproducts;执行上面查询语句得到以下结果
mysql SELECT MIN(buyPrice)
FROMproducts;
---------------
| MIN(buyPrice) |
---------------
| 15.91 |
---------------
1 row in setMySQL MIN与子查询
要不仅选择价格还要查询产品代码和产品名称等其他产品信息可以在子查询中使用MIN函数如下所示
SELECT productCode, productName, buyPrice
FROMproducts
WHEREbuyPrice (SELECT MIN(buyPrice)FROMproducts);执行上面查询语句得到以下结果 -
------------------------------------------------------------
| productCode | productName | buyPrice |
------------------------------------------------------------
| S24_2840 | 1958 Chevy Corvette Limited Edition | 15.91 |
------------------------------------------------------------
1 row in set上面语句怎么运行
子查询返回products表中最低的价格产品。外部查询查询价格等于从子查询返回的最低价格的商品。
MySQL MIN与GROUP BY
当您将MIN函数与SELECT语句中的GROUP BY子句相结合使用时可以获取每个组的最小值。
例如要查询每个产品线的最低价格产品请使用以下语句
SELECT productline, MIN(buyprice)
FROMproducts
GROUP BY productline;执行上面查询语句得到以下结果 -
mysql SELECT productline, MIN(buyprice)
FROMproducts
GROUP BY productline;
---------------------------------
| productline | MIN(buyprice) |
---------------------------------
| Classic Cars | 15.91 |
| Motorcycles | 24.14 |
| Planes | 29.34 |
| Ships | 33.3 |
| Trains | 26.72 |
| Trucks and Buses | 24.92 |
| Vintage Cars | 20.61 |
---------------------------------
7 rows in set如果您不仅要选择产品线还要查询products表中的其他列例如产品代码和产品名称则需要使用相关的子查询。 MySQL MIN与相关子查询
以下查询通过将MIN()函数与相关子查询相结合来查询每个产品线中的最低价格产品
SELECT productline, productCode, productName, buyprice
FROMproducts a
WHEREbuyprice (SELECT MIN(buyprice)FROMproducts bWHEREb.productline a.productline);执行上面查询语句得到以下结果 -
------------------------------------------------------------------------------------
| productline | productCode | productName | buyprice |
------------------------------------------------------------------------------------
| Trucks and Buses | S18_2432 | 1926 Ford Fire Engine | 24.92 |
| Vintage Cars | S24_2022 | 1938 Cadillac V-16 Presidential Limousine | 20.61 |
| Classic Cars | S24_2840 | 1958 Chevy Corvette Limited Edition | 15.91 |
| Planes | S24_3949 | Corsair F4U ( Bird Cage) | 29.34 |
| Motorcycles | S32_2206 | 1982 Ducati 996 R | 24.14 |
| Trains | S32_3207 | 1950s Chicago Surface Lines Streetcar | 26.72 |
| Ships | S72_3212 | Pont Yacht | 33.3 |
------------------------------------------------------------------------------------
7 rows in set对于来自外部查询的每个产品线相关子查询选择产品线中的最低价格产品并返回最低价格。 然后将返回的最低价格用作外部查询的输入以选择相关产品数据包括产品线产品代码产品名称和价格。
如果要在不使用MIN函数和子查询的情况下实现相同的结果则可以使用带有LEFT JOIN子句的自联接如下查询语句
SELECT a.productline, a.productCode, a.productName, a.buyprice
FROMproducts aLEFT JOINproducts b ON a.productline b.productlineAND b.buyprice a.buyprice
WHEREb.productcode IS NULL;执行上面查询语句得到以下结果 -
------------------------------------------------------------------------------------
| productline | productCode | productName | buyprice |
------------------------------------------------------------------------------------
| Trucks and Buses | S18_2432 | 1926 Ford Fire Engine | 24.92 |
| Vintage Cars | S24_2022 | 1938 Cadillac V-16 Presidential Limousine | 20.61 |
| Classic Cars | S24_2840 | 1958 Chevy Corvette Limited Edition | 15.91 |
| Planes | S24_3949 | Corsair F4U ( Bird Cage) | 29.34 |
| Motorcycles | S32_2206 | 1982 Ducati 996 R | 24.14 |
| Trains | S32_3207 | 1950s Chicago Surface Lines Streetcar | 26.72 |
| Ships | S72_3212 | Pont Yacht | 33.3 |
------------------------------------------------------------------------------------
7 rows in set在本教程中您已经学习了如何使用MySQL MIN函数来查找一组值中的最小值。