前言
前一章我们学习了表单数据查询,今天将学习使用关键字order by、group by对查询结果进行排序和分组的,以及如何使用关键字LIMIT限制查询结果的数量。
一:对查询结果进行排序
语法:
select 字段名 from 表名 order by 字段名 ASC/DESC
ASC 升序关键字
DESC降序关键字
编程要求
在右侧编辑器Begin-End处补充代码,查询学生成绩表中1班同学的所有信息并以成绩降序的方式显示结果。
我们已经为你提供了学生成绩表:
tb_score表数据:
stu_id class_id name score
1 2 Jack 81
2 1 David 74
3 1 Mason 92
4 2 Ethan 89
5 1 Gina 65
USE School;
#请在此处添加实现代码
########## Begin ##########
########## 查询1班同学的所有信息以成绩降序的方式显示结果 ##########
select * from tb_score where class_id=1 order by score DESC;
########## End ##########
二:分组查询
分组查询的关键字是Group By,查询的是每个分组中 首次出现的一条记录。
语法规则:
select 字段名 from 表名 group by 字段名;
编程要求
在右侧编辑器Begin-End处补充代码,对班级表中的班级名称进行分组查询。
我们已经为你提供了班级表信息:
tb_class表数据:
stu_id class_id name
1 367 Jack
2 366 David
3 366 Mason
4 367 Ethan
5 366 Gina
USE School;
#请在此处添加实现代码
########## Begin ##########
########## 对班级名称进行分组查询 ##########
select * from tb_class group by class_id;
########## End ##########
三:使用LIMIT限制查询结果的数量
在我们查询大量数据结果时,会返回很多条数据,有需要的记录可能就其中的一条或者几条。比如,实现分页功能,若每页显示10条记录,每次查询就只需要10条记录。
在MySQL中,提供了LIMIT关键字,用来限制查询结果的数量。
语法规则:
select 字段名 from 表名 limit offset;
其中offset为偏移量
其中,若出现比如limit 2,4表示从第三条起数四条,
编程要求
在右侧编辑器Begin-End处补充代码,查询班级中第2名到第5名的学生信息,并根据学生成绩进行降序排序。
我们已经为你提供了学生成绩表:
tb_score表数据:
id name score
1 Jack 89
2 David 73
3 Mason 62
4 Ethan 93
5 Gina 76
6 Dorris 98
7 kain 86
8 Alice 91
USE School;
#请在此处添加实现代码
########## Begin ##########
########## 查询班级中第2名到第5名的学生信息 ##########
select * from tb_score order by score desc limit 1,4;#limit在最后#
########## End ##########
小结
查询结果排序用order by
查询结果分组用group by
限制查询结果数量用limit offset
升序ASC
降序DESC