目录
第1关:查询结果排序
任务描述
本关任务:以成绩的降序显示学生成绩表中所有信息。
相关知识
为了完成本关任务,你需要掌握:
- 结果排序的关键字;
- 指定排序方向的关键字。
对查询结果排序
我们知道在OpenGauss中从数据表中读取数据都是使用SELECT语句。 如果我们需要对读取的语句进行排序,我们就可以使用Order By子句来设定你想要按照的字段进行排序并返回结果。
语法:
SELECT 字段名 FROM 表名 ORDER BY 字段名 [ASC[DESC]];
你还可以根据自己的需求添加WHERE、LIKE子句来设置条件,再对结果过进行排序显示。
现有user表数据如下:
| id | name | age |
|---|---|---|
| 1 | Tom | 32 |
| 2 | Nancy | 18 |
| 3 | Allen | 24 |
| 4 | Jason | 23 |
我们需要查询表中信息,要求按照年龄的升序进行排序:
指定排序方向
从上面的查询语句中我们并未看到有任何表示排序方向的关键字,在默认情况下,它是按升序排列的。
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 |
测试说明
平台会对你编写的代码进行测试:
代码
--#请在此处添加实现代码
--########## Begin ##########
select * from tb_score where class_id=1 order by score DESC;
--########## 查询1班同学的所有信息并以成绩降序的方式显示结果 ##########
--########## End ##########
第2关:分组统计
任务描述
本关任务:对班级表中的班级名称进行分组查询。
相关知识
为了完成本关任务,你只需要掌握分组查询的单独使用。
但是在实际开发中一般不会用到,本章节只作为对分组查询的了解。往后继续学习,我们会介绍分组查询与其他查询一起结合使用。
分组查询的单独使用
分组查询的关键字是Group By,查询的是每个分组中 首次出现的一条记录。
语法:
SELECT 字段名 FROM 表名 GROUP BY 字段名;
例如: 现有user表数据:
| id | name | sex |
|---|---|---|
| 1 | Tom | 男 |
| 2 | Nancy | 女 |
| 3 | Allen | Null |
| 4 | Jason | 男 |
我们对表中数据的性别进行分组查询:
可以看出,返回了

最低0.47元/天 解锁文章
683

被折叠的 条评论
为什么被折叠?



