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

大家好,我是宁一。

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

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

基本语法:

SELECT <字段名> FROM <表名> ORDER BY <字段名>;
1、ORDER BY 后面可以:
  • 是表中现有的列名;

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

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

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

SELECT *
FROM Students
ORDER BY Ssex;

2、ORDER BY 后面还可以:
  • 跟多个字段名,字段名之间用英文逗号隔开;

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

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

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

SELECT *
FROM Students
ORDER BY Ssex DESC,Sage;

3、MySQL特性

在MySQL中,ORDER BY 后面可以:

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

  • 用列别名排序;

实例:

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


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

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

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

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

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

点击关注,学习SQL不迷路~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

喵宁一

点赞是最好的赞赏~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值