在第一天学习的过程中,查询的结果,是按照默认的顺序显示,也可以进行排序。
order by 排序
- asc 升序 (默认的排序方式,可以不用写)
desc 降序
默认的排序的方式是升序, 使用方式就是后面跟上对应的排序字段。 ```sql — 查询学生表,按照年龄进行排序 默认从小到大(升序)
SELECT * from student ORDER BY age;
<br />如果降序排序就是 跟上 desc;```sql-- 查询学生表,按照年龄进行排序 降序SELECT * from studentORDER BY age DESC;

成绩按照从大到小排序。
SELECT * from studentORDER BY score DESC;
sex 不为空的学生按照 age 从小到大排序。
SELECT * FROM studentWHERE not sex is NULL -- 条件ORDER BY age -- 排序
多个字段排序
排序的时候也可以根据多个字段进行排序
order by age, score先age进行 从小到大的排序
- 如果两个age相等,再按照 score 进行从小到大的排序
查询学生表,按照学生的age排序,age相等,按照成绩(score) 排序
select * from studentorder by age, score;
查询学生表,按照学生的score排序(升序),score相等,按照age 排序(降序)。
select * from studentorder by score asc, age desc;
查询学生表,age,score都不为空,进行排序,score 从大到小排序。
select * from studentwhere not age is null and not score is nullorder by score desc;
limit 控制显示的结果数量
limit 1 只显示1条结果。
按照age排序,只显示两条内容
select * from studentorder by agelimit 2;

查询最大的年龄。
select age FROM studentorder by age desclimit 1;
查询最小的分数。(不包含Null)
select score from studentwhere not score is nullorder by scorelimit 1;
limit m,n 分页
limit 1,2
- 1 从第(1+1=2)2条数据开始显示
- 2 显示2条数据
select * from studentORDER BY ageLIMIT 2,3

- 按照成绩score降序排序,显示 第5-10条数据。
- 5-10 总共6条
- 从第5条开始显示(4+1)
- 确定
limit 4,6select * from studentorder by score desclimit 4,6;
distinct 去除重复数据

在查询的时候,去重
显示去重之后的成绩
select distinct(score) from student;

查找第二高分数;
select distinct(score) from studentorder by score desclimit 1,1;
查找倒数第一的分数(不包含Null);
select distinct(score) from studentwhere not score is nullorder by scorelimit 1;
备注: 去重的 时候每次只能添加1个字段。
select distinct(age) from student;
下面的语句会报错
select distinct(name),distinct(age) from student;

