查询一组数据的众数:
方法1:仅适用于一组数据只有一个众数的情况
1)首先对数据按照值的不同进行分组,并对每组中的数据进行计数,再根据计数的大小进行降序排序;
2)上述1)中结果集的第一行即要求取的众数所在的行。
方法2:适用于一组数据有一个或多个众数的情况
1)首先对数据按照值的不同进行分组,并对每组中的数据进行计数;
2)使用max函数找出统计个数的最大值及其对应的被统计值,此被统计值就是要求的众数。
创建测试用表:
# 创建学生成绩表:
create table grade(
id int,
name varchar(10),
score int (10)
)engine myisam charset utf8mb4;
# 向成绩表中插入数据:
insert into grade values
(1,'张无忌',85),
(2,'李隆基',59),
(3,'王五',60),
(4,'曹操',79),
(5,'小明',90),
(6,'如花',60),
(7,'尉迟恭',100),
(8,'欧阳风',90),
(9,'刘备',90),
(10,'董永',99),
(11,'冯钰',83),
(12,'孙殿英',82);
查询学生成绩表garde中