mysql查詢最大值語句是:先將stuname欄位分組;然後再用MAX函數計算每組中的最大值即可,程式碼為【SELECT a.stuname,MAX(a. score) AS..】。
【相關學習推薦:#mysql教學##(影片)】
mysql查詢最大值語句是:
1、方法1SELECT a.stuname,MAX(a.score) AS score FROM stuscore a GROUP BY a.`stuname` ;
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`);
SELECT a.stuname,a.score AS score FROM stuscore a JOIN
stuscore b ON a.stuname=b.stuname我們會得到下面的結果集:
ON a.stuname=b.stuname「和右表中的每筆記錄進行匹配,這就是為什麼會出現重複記錄的原因。這個有點像程式語言中的「雙重循環」。
GROUP BY a.score HAVING a.score=MAX (b.score),就可以得到每個學生中的最大分數;
GROUP BY a.`score ` HAVING a.` score`=MAX(b.`score`)這個分組條件一開始我也是有點不大理解,就是說我是根據score字段進行分組的,但這裡的MAX()函數為什麼就可以計算出每個學生中的最大分數,我們知道第一種方法比較好理解就是對每個學生的姓名分組,然後用
MAX()函數計算出其中的最大值,這是肯定的,但第二方法是對score欄位進行分組的。在這裡我覺得原因應該是,在將兩個表進行連接時,連接條件
a.stuname=b.stuname已經對這些記錄根據學生姓名進行分組了,所以
MAX(b.score)才可以計算出每個學生中的最大分數。
想了解更多程式設計學習,請關注php培訓欄位!
以上是mysql查詢最大值語句是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!