ORDER BY语句是用来进行排序的,后面跟着需要进行排序的字段
基本语法:

select <字段名> from <表名> order by <字段名>;

1.ORDER BY语句后面接数据:

  • 可以是表中现有的字段名
  • 可以给数字进行排序,也可以给字符,文字排序
  • 默认是升序排序(ASC),DESC是倒序排序

实例1:将学生表的学生根据年龄进行排序

select Sage AS '年龄正序排序' from students order by Sage 

执行结果:
在这里插入图片描述

2.ORDER BY语句后面有多个字段进行排序:

  • 跟多个字段名时,字段名以英文逗号进行隔开
  • 任何一个单独的字段名都可以加降序排序(DESC)
  • 字段的顺序很重要,会根据第一个字段排序,第一个字段相同,在根据第二个字段排序

实例2:将学生表的学生根据性别进行倒序排序,在根据年龄进行升序排序

SELECT
	Ssex AS '性别倒序排序',
	Sage AS '年龄正序排序' 
FROM students ORDER BY Ssex DESC,Sage

执行结果:
在这里插入图片描述
3.在MySQL中,使用order by 后面可以:

  • 使用列别名进行排序
  • 用任何列进行排序,不管这一列是否在select子句中

实例3:

select Sname,Sid+100 AS '新的编号' from students order by Ssex,'新编号'

执行结果:
在这里插入图片描述
如上结果我们可以看到:

  • 查询出的列只有Sname和新的编号这两列,
  • 而Ssex和新编号这两个分别是:没有在select子句中的列和别名列

这个属于是MySQL的特性,如果在其他的数据库系统中这样查可能会报错

实例4:在成绩表中,将课程编号(Cid)为1的数据,根据分数(score)进行倒序排序

select * from scores where Cid = 1 order by score DESC

执行结果:
在这里插入图片描述

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐