mysql怎么求最大值、最小值和平均值?

mysql中,可以分別使用MAX()函數(shù)、MIN()函數(shù)和AVG()函數(shù)來(lái)求最大值、最小值和平均值。MAX()和MIN()函數(shù)可以返回指定列中的最大值和最小值;AVG()函數(shù)通過(guò)計(jì)算返回的行數(shù)和每一行數(shù)據(jù)的和,求得指定列數(shù)據(jù)的平均值。

mysql怎么求最大值、最小值和平均值?

(推薦教程:mysql視頻教程

MySQL MAX函數(shù):查詢指定列的最大值

MySQL MAX() 函數(shù)是用來(lái)返回指定列中的最大值。

為了方便理解,首先創(chuàng)建一個(gè)學(xué)生成績(jī)表 tb_students_score,學(xué)生成績(jī)表的數(shù)據(jù)內(nèi)容如下所示。

mysql>?use?test_db; Database?changed mysql>?SELECT?*?FROM?tb_students_score; +--------------+---------------+ |?student_name?|?student_score?| +--------------+---------------+ |?Dany?????????|????????????90?| |?Green????????|????????????99?| |?Henry????????|????????????95?| |?Jane?????????|????????????98?| |?Jim??????????|????????????88?| |?John?????????|????????????94?| |?Lily?????????|???????????100?| |?Susan????????|????????????96?| |?Thomas???????|????????????93?| |?Tom??????????|????????????89?| +--------------+---------------+ 10?rows?in?set?(0.13?sec)

【實(shí)例 1】在 tb_students_score 表中查找最高的成績(jī),輸入的 SQL 語(yǔ)句和執(zhí)行結(jié)果如下所示。

mysql>?SELECT?MAX(student_score) ????->?AS?max_score ????->?FROM?tb_students_score; +-----------+ |?max_score?| +-----------+ |???????100?| +-----------+ 1?row?in?set?(0.06?sec)

由運(yùn)行結(jié)果可以看到,MAX() 函數(shù)查詢出 student_score 字段的最大值為 100。

MAX() 函數(shù)不僅適用于查找數(shù)值類型,也可應(yīng)用于字符類型。

【實(shí)例 2】在 tb_students_score 表中查找 student_name 的最大值,輸入的 SQL 語(yǔ)句和執(zhí)行結(jié)果如下所示。

mysql>?SELECT?MAX(student_name) ????->?AS?max_name ????->?FROM?tb_students_score; +----------+ |?max_name?| +----------+ |?Tom??????| +----------+ 1?row?in?set?(0.03?sec)

由運(yùn)行結(jié)果可以看到,MAX() 函數(shù)可以對(duì)字母進(jìn)行大小判斷,并返回最大的字符或者字符串值。

注意:MAX() 函數(shù)還可以返回任意列中的最大值,包括返回字符類型的最大值。在對(duì)字符類型的數(shù)據(jù)進(jìn)行比較時(shí),按照字符的 ASCII 碼值大小進(jìn)行比較,從 a~z,a 的 ASCII 碼最小,z 的最大。在比較時(shí),先比較第一個(gè)字符,如果相等,繼續(xù)比較下一個(gè)字符,一直到兩個(gè)字符不相等或者字符結(jié)束為止。例如,b 與 t 比較時(shí),t 為最大值;bcd 與 bca 比較時(shí),bcd 為最大值。

MySQL MIN函數(shù):查詢指定列的最小值

MySQL MIN() 函數(shù)是用來(lái)返回查詢列中的最小值。

【實(shí)例】在 tb_students_score 表中查找最低的成績(jī),輸入的 SQL 語(yǔ)句和執(zhí)行結(jié)果如下所示。

mysql>?SELECT?MIN(student_score) ????->?AS?min_score ????->?FROM?tb_students_score; +-----------+ |?min_score?| +-----------+ |????????88?| +-----------+ 1?row?in?set?(0.00?sec)

由結(jié)果可以看到,MIN() 函數(shù)查詢出 student_score 字段的最小值為 88。

提示:MIN() 函數(shù)與 MAX() 函數(shù)類似,不僅適用于查找數(shù)值類型,也可應(yīng)用于字符類型。

MySQL AVG函數(shù):求平均值

MySQL AVG() 函數(shù)通過(guò)計(jì)算返回的行數(shù)和每一行數(shù)據(jù)的和,求得指定列數(shù)據(jù)的平均值。

【實(shí)例】在 tb_students_score 表中,查詢所有學(xué)生成績(jī)的平均值,輸入的 SQL 語(yǔ)句和執(zhí)行結(jié)果如下所示。

mysql>?SELECT?AVG(student_score) ????->?AS?score_avg ????->?FROM?tb_students_score; +-----------+ |?score_avg?| +-----------+ |???94.2000?| +-----------+ 1?row?in?set?(0.03?sec)

提示:使用 AVG() 函數(shù)時(shí),參數(shù)為要計(jì)算的列名稱,若要得到多個(gè)列的平均值,則需要在每一列都使用 AVG() 函數(shù)。

以上就是

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊13 分享