MySQL MAX() 函数是用来返回指定列中的最大值。
在演示 MAX 函数用法之前,我们先 t_user 用户表,表数据如下:
mysql> select * from t_user; +----+------+-----+------+----------+ | id | name | sex | age | salary | +----+------+-----+------+----------+ | 1 | 张三 | 男 | 22 | 6782.50 | | 2 | 李四 | 男 | 27 | 7523.00 | | 3 | 王五 | 女 | 22 | 6760.30 | | 4 | 赵六 | 男 | 24 | 6810.50 | | 5 | 王二 | 男 | 27 | 10280.00 | | 6 | 杜一 | 女 | 25 | 8700.00 | | 7 | NULL | 女 | NULL | 9750.00 | +----+------+-----+------+----------+ 7 rows in set (0.06 sec)
(1)使用 MAX 函数统计 t_user 表中,age 和 salary 列的最大值。如下:
mysql> select MAX(AGE) max_age, MAX(salary) max_salary from t_user; +---------+------------+ | max_age | max_salary | +---------+------------+ | 27 | 10280.00 | +---------+------------+ 1 row in set (0.03 sec)
由运行结果可以得知,MAX() 函数查询出 age 字段的最大值为 27,salary 字段的最大值为 10280。
(2)MAX 函数不仅适用于查找数值类型,也可应用于字符类型。在 t_user 表中查找 name 字段的最大值,如下:
mysql> select MAX(name) as MAX_NAME from t_user; +----------+ | MAX_NAME | +----------+ | 赵六 | +----------+ 1 row in set (0.03 sec)
由运行结果可以得知,MAX() 函数可以对字母进行大小判断,并返回最大的字符或者字符串值。
注意:MAX() 函数还可以返回任意列中的最大值,包括返回字符类型的最大值。在对字符类型的数据进行比较时,按照字符的 ASCII 码值大小进行比较,从 a~z,a 的 ASCII 码最小,z 的最大。在比较时,先比较第一个字符,如果相等,继续比较下一个字符,一直到两个字符不相等或者字符结束为止。例如,b 与 t 比较时,t 为最大值;bcd 与 bca 比较时,bcd 为最大值。