在mysql中,可以分别使用max()函数、min()函数和avg()函数来求最大值、最小值和平均值。max()和min()函数可以返回指定列中的最大值和最小值;avg()函数通过计算返回的行数和每一行数据的和,求得指定列数据的平均值。
(推荐教程:mysql视频教程)
mysql max函数:查询指定列的最大值
mysql max() 函数是用来返回指定列中的最大值。
为了方便理解,首先创建一个学生成绩表 tb_students_score,学生成绩表的数据内容如下所示。
mysql> use test_db;database changedmysql> 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)
【实例 1】在 tb_students_score 表中查找最高的成绩,输入的 sql 语句和执行结果如下所示。
mysql> select max(student_score) -> as max_score -> from tb_students_score;+-----------+| max_score |+-----------+| 100 |+-----------+1 row in set (0.06 sec)
由运行结果可以看到,max() 函数查询出 student_score 字段的最大值为 100。
max() 函数不仅适用于查找数值类型,也可应用于字符类型。
【实例 2】在 tb_students_score 表中查找 student_name 的最大值,输入的 sql 语句和执行结果如下所示。
mysql> select max(student_name) -> as max_name -> from tb_students_score;+----------+| max_name |+----------+| tom |+----------+1 row in set (0.03 sec)
由运行结果可以看到,max() 函数可以对字母进行大小判断,并返回最大的字符或者字符串值。
注意:max() 函数还可以返回任意列中的最大值,包括返回字符类型的最大值。在对字符类型的数据进行比较时,按照字符的 ascii 码值大小进行比较,从 a~z,a 的 ascii 码最小,z 的最大。在比较时,先比较第一个字符,如果相等,继续比较下一个字符,一直到两个字符不相等或者字符结束为止。例如,b 与 t 比较时,t 为最大值;bcd 与 bca 比较时,bcd 为最大值。
mysql min函数:查询指定列的最小值
mysql min() 函数是用来返回查询列中的最小值。
【实例】在 tb_students_score 表中查找最低的成绩,输入的 sql 语句和执行结果如下所示。
mysql> select min(student_score) -> as min_score -> from tb_students_score;+-----------+| min_score |+-----------+| 88 |+-----------+1 row in set (0.00 sec)
由结果可以看到,min() 函数查询出 student_score 字段的最小值为 88。
提示:min() 函数与 max() 函数类似,不仅适用于查找数值类型,也可应用于字符类型。
mysql avg函数:求平均值
mysql avg() 函数通过计算返回的行数和每一行数据的和,求得指定列数据的平均值。
【实例】在 tb_students_score 表中,查询所有学生成绩的平均值,输入的 sql 语句和执行结果如下所示。
mysql> select avg(student_score) -> as score_avg -> from tb_students_score;+-----------+| score_avg |+-----------+| 94.2000 |+-----------+1 row in set (0.03 sec)
提示:使用 avg() 函数时,参数为要计算的列名称,若要得到多个列的平均值,则需要在每一列都使用 avg() 函数。
以上就是mysql怎么求最大值、最小值和平均值?的详细内容。
