日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

MySQL min()函数

發(fā)布時間:2023/12/3 数据库 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MySQL min()函数 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

轉(zhuǎn)載自??MySQL min()函數(shù)

MySQL MIN函數(shù)

MIN()函數(shù)返回一組值中的最小值。MIN()函數(shù)在某些情況下非常有用,例如找到最小的數(shù)字,選擇最便宜的產(chǎn)品,獲得最低的信用額度等。

以下說明MIN()函數(shù)的語法:

MIN(DISTINCT expression);

如果指定DISTINCT運算符,則MIN函數(shù)返回不同值的最小值,與省略DISTINCT相同。換句話說,DISTINCT運算符對MIN函數(shù)沒有任何影響,它只是為了ISO兼容性。

請注意,DISTINCT運算符在其他聚合函數(shù)(如SUM,AVG和COUNT)中生效。

MySQL MIN函數(shù)示例

我們來看看示例數(shù)據(jù)庫(yiibaidb)中的products表,其結(jié)構(gòu)如下表所示 -

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表中最便宜的產(chǎn)品,請使用以下查詢:

SELECT MIN(buyPrice) FROMproducts;

執(zhí)行上面查詢語句,得到以下結(jié)果?

mysql> SELECT MIN(buyPrice) FROMproducts; +---------------+ | MIN(buyPrice) | +---------------+ | 15.91 | +---------------+ 1 row in set

?

MySQL MIN與子查詢

要不僅選擇價格,還要查詢產(chǎn)品代碼和產(chǎn)品名稱等其他產(chǎn)品信息,可以在子查詢中使用MIN函數(shù),如下所示:

SELECT productCode, productName, buyPrice FROMproducts WHEREbuyPrice = (SELECT MIN(buyPrice)FROMproducts);

執(zhí)行上面查詢語句,得到以下結(jié)果 -

+-------------+-------------------------------------+----------+ | productCode | productName | buyPrice | +-------------+-------------------------------------+----------+ | S24_2840 | 1958 Chevy Corvette Limited Edition | 15.91 | +-------------+-------------------------------------+----------+ 1 row in set

上面語句怎么運行?

  • 子查詢返回products表中最低的價格產(chǎn)品。
  • 外部查詢查詢價格等于從子查詢返回的最低價格的商品。

MySQL MIN與GROUP BY

當您將MIN函數(shù)與SELECT語句中的GROUP BY子句相結(jié)合使用時,可以獲取每個組的最小值。

例如,要查詢每個產(chǎn)品線的最低價格產(chǎn)品,請使用以下語句:

SELECT productline, MIN(buyprice) FROMproducts GROUP BY productline;

執(zhí)行上面查詢語句,得到以下結(jié)果 -

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

如果您不僅要選擇產(chǎn)品線,還要查詢products表中的其他列,例如產(chǎn)品代碼和產(chǎn)品名稱,則需要使用相關的子查詢。

?

MySQL MIN與相關子查詢

以下查詢通過將MIN()函數(shù)與相關子查詢相結(jié)合來查詢每個產(chǎn)品線中的最低價格產(chǎn)品:

SELECT productline, productCode, productName, buyprice FROMproducts a WHEREbuyprice = (SELECT MIN(buyprice)FROMproducts bWHEREb.productline = a.productline);

執(zhí)行上面查詢語句,得到以下結(jié)果 -

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

對于來自外部查詢的每個產(chǎn)品線,相關子查詢選擇產(chǎn)品線中的最低價格產(chǎn)品并返回最低價格。 然后將返回的最低價格用作外部查詢的輸入,以選擇相關產(chǎn)品數(shù)據(jù),包括產(chǎn)品線,產(chǎn)品代碼,產(chǎn)品名稱和價格。

如果要在不使用MIN函數(shù)和子查詢的情況下實現(xiàn)相同的結(jié)果,則可以使用帶有LEFT JOIN子句的自聯(lián)接,如下查詢語句:

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;

執(zhí)行上面查詢語句,得到以下結(jié)果 -

+------------------+-------------+-------------------------------------------+----------+ | 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 | 1950's Chicago Surface Lines Streetcar | 26.72 | | Ships | S72_3212 | Pont Yacht | 33.3 | +------------------+-------------+-------------------------------------------+----------+ 7 rows in set

在本教程中,您已經(jīng)學習了如何使用MySQL?MIN函數(shù)來查找一組值中的最小值。

總結(jié)

以上是生活随笔為你收集整理的MySQL min()函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。