亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

mysql查詢最大值的方法有哪些

發布時間:2020-09-04 14:23:52 來源:億速云 閱讀:1019 作者:小新 欄目:MySQL數據庫

這篇文章將為大家詳細講解有關mysql查詢最大值的方法有哪些,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

mysql查詢最大值語句是:首先通過對stuname字段進行分組;然后再用MAX函數對每組中的最大值進行計算即可,代碼為【SELECT a.stuname,MAX(a.score) AS..】。

mysql查詢最大值的方法有哪些

mysql查詢最大值語句是:

1、方法1

SELECT a.stuname,MAX(a.score) AS score FROM stuscore a  GROUP BY a.`stuname` ;

在這個語句中,我們通過對stuname字段進行分組,然后再用MAX()函數對每組中的最大值進行計算。

2、方法2:使用連接

SELECT a.stuname,a.score AS score FROM stuscore a JOIN 
stuscore b ON a.`stuname`=b.`stuname` 
 GROUP BY a.`score` HAVING a.`score`=MAX(b.`score`);

在第二條sql語句中,我們以stuname為判斷條件,對兩個表進行連接操作。如果只執行

SELECT a.stuname,a.score AS score FROM stuscore a JOIN

stuscore b ON a.stuname=b.stuname我們會得到下面的結果集:

mysql查詢最大值的方法有哪些

之所以會得到這個結果集,是因為在連接時,左表中的每條記錄都會根據連接條件ON a.stuname=b.stuname“和右表中的每條記錄進行匹配,這就是為什么會出現重復記錄的原因。這個有點像編程語言中的“雙重循環”。

然后再加分組和分組條件GROUP BY a.score HAVING a.score=MAX(b.score),就可以得到每個學生中的最大分數;

mysql查詢最大值的方法有哪些

其實GROUP BY a.`score ` HAVING a.`score`=MAX(b.`score`)這個分組條件一開始我也是有點不大理解,就是說我是根據score字段進行分組的,但這里的MAX()函數為什么就可以計算出每個學生中的最大分數,我們知道第一種方法比較好理解就是對每個學生的姓名分組,然后用MAX()函數計算出其中的最大值,這是肯定的,但第二方法是對score字段進行分組的。在這里我覺得原因應該是,在將兩個表進行連接時,連接條件a.stuname=b.stuname已經對這些記錄根據學生姓名進行分組了,所以MAX(b.score)才可以計算出每個學生中的最大分數。

關于mysql查詢最大值的方法有哪些就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

江西省| 来凤县| 台前县| 新郑市| 昌乐县| 多伦县| 体育| 新野县| 新乐市| 石柱| 宝丰县| 成安县| 双桥区| 白城市| 连州市| 图木舒克市| 临清市| 衡南县| 华容县| 涟源市| 岳阳市| 许昌市| 衢州市| 曲阜市| 滕州市| 武夷山市| 邵武市| 永吉县| 清徐县| 军事| 东源县| 宁城县| 宝鸡市| 平度市| 错那县| 织金县| 明水县| 丹棱县| 乌兰浩特市| 康乐县| 休宁县|