中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

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

阿尔山市| 南汇区| 中方县| 茶陵县| 莎车县| 高邮市| 兴安盟| 竹北市| 钦州市| 崇仁县| 清徐县| 什邡市| 临朐县| 北辰区| 霍邱县| 乐至县| 陕西省| 历史| 仙游县| 平塘县| 印江| 若羌县| 台北县| 鄂温| 九龙县| 长顺县| 南丹县| 始兴县| 湘潭县| 鸡西市| 木里| 南溪县| 南阳市| 会昌县| 资讯| 侯马市| 富民县| 峡江县| 黄陵县| 枣庄市| 台东市|