ORDER BY 排序子句 | 零基础自学SQL课程系列Day6

简介: 今天是SQL教程的第六课,来看看ORDER BY 排序子句。ORDER BY语句是用来排序的,后面跟的是字段名。基本语法:

今天是SQL教程的第六课,来看看ORDER BY 排序子句。


ORDER BY语句是用来排序的,后面跟的是字段名。


基本语法:


SELECT <字段名> FROM <表名> ORDER BY <字段名>;、


1、ORDER BY 后面可以:


  • 是表中现有的列名;


  • 给数字排序,也可以给字符、文字排序;


  • ASC是升序排序(默认),DESC是倒序排序。


实例: 将Students学生表根据性别排序。


image.png


SELECT *
FROM Students
ORDER BY Ssex;


image.png

2、ORDER BY 后面还可以:


跟多个字段名,字段名之间用英文逗号隔开;


任何一个字段名后面都可以加降序排序(DESC);


字段的顺序很重要,会先根据第一个字段排序,第一个字段相同的,再根据第二个字段排序。


实例: 将Students学生表根据性别Ssex倒序排序,再根据Sage升序排序。


SELECT *
FROM Students
ORDER BY Ssex DESC,Sage;


image.png


3、MySQL特性


在MySQL中,ORDER BY 后面可以


  • 用任何列排序,不管那列是不是在SELECT子句中。


  • 用列别名排序;


实例:


SELECT Sname,Sid+100 AS "新编号"
FROM Students
ORDER BY Ssex,"新编号";


image.png

这两个分别是未在SELECT子句中的列 和 别名列,都用到了 MySQL 特性,要是在其他数据库管理系统中写这样的查询可能就会报错。


作业: 在Scores成绩表中,将课程编号(Cid)为1的记录,根据分数(score)倒序排序。


答案解析: 需要用WHERE来判断课程编号(Cid)为1,ORDER BY子句放在WHERE子句的后面。


SELECT *
FROM Scores
WHERE Cid = 1
ORDER BY score DESC;


image.png

下节课开始我们第七课的学习,来看看LIMIT子句的用法。


目录
相关文章
|
2月前
|
SQL 存储
如何在 SQL Server 中使用 `OUTPUT` 子句
【8月更文挑战第10天】
67 7
如何在 SQL Server 中使用 `OUTPUT` 子句
|
2月前
|
SQL 数据库
|
2月前
|
SQL 数据挖掘 关系型数据库
|
2月前
|
SQL
访问者模式问题之构造一个包含 select、from 和 where 子句的 SQL 节点树,如何解决
访问者模式问题之构造一个包含 select、from 和 where 子句的 SQL 节点树,如何解决
|
3月前
|
SQL Oracle 关系型数据库
SQL SELECT TOP 子句
【7月更文挑战第12天】SQL SELECT TOP 子句。
40 14
|
3月前
|
SQL Oracle 关系型数据库
SQL SELECT TOP 子句
【7月更文挑战第13天】SQL SELECT TOP 子句。
24 5
|
3月前
|
SQL 数据库
SQL WHERE 子句
【7月更文挑战第10天】SQL WHERE 子句。
37 4
|
3月前
|
SQL 数据库
SQL ORDER BY 关键字
【7月更文挑战第11天】SQL ORDER BY 关键字。
36 2
|
4月前
|
SQL 关系型数据库 MySQL
SQL SELECT TOP, LIMIT, ROWNUM 子句
SQL SELECT TOP, LIMIT, ROWNUM 子句
38 2
SQL SELECT TOP, LIMIT, ROWNUM 子句
|
4月前
|
SQL 数据库
SQL HAVING 子句
SQL HAVING 子句
40 2

热门文章

最新文章