sql数据库排序设置(sql排序规则)
序
之前已经给大家分享四节教程了
第一节:讲了SQL中最简单最基础的检索语句。
第二节:我们对第一节中的检查语句增加了过滤条件。
第三节:我们讲解了5个常用的聚合函数。
第四节:SQL超入门第四篇:分组聚合
今天我们来讲排序,大家工作中可能经常要对一些数据的排序,比如查看近30天每日销量就肯定要按顺序进行比较,再比如查看对各城市的销量进行排序,看看哪些城市排在前面,哪些排在后面。这些都是经常使用的。
在Excel上排序,这个想必大家应该都熟悉。我这里给个简单Excel的例子。
1. Excel中的排序
Excel中排序一般就是这三个按钮:升序、降序、自定义排序
升序、降序太简单我们就不在这里浪费大家时间了,简单说说自定义排序的功能就可以了
在自定义排序中,我们可以对数据指定通过多个字段进行排序,而且这几个字段还可以按照不同的次序排列。
比如下图,我把订单先按照订单金额降序,再按商品单价升序排序
例子很简单,懂Excel的童靴应该都能明白,如果感觉理解有难度的,就先请自行百度吧。
这些操作在SQL中,也都可以实现,而且都一样的简单。
2. SQL中的排序
SQL中使用ORDER BY来进行排序
我们先给出刚才Excel示例的SQL实现
SQL代码如下:
select
order_no,user_id,order_amount,
goods_name,goods_price,goods_num,create_time
from order_detail
order by order_amount desc,goods_price asc
这里说下SQL中排序的注意事项:
- 1、必须使用 ORDER BY关键字
- 2、待排序字段间用英文逗号分隔
- 3、ASC 代表字段降序,DESC 代表字段降序
- 4、与 GROUP BY 同时使用,ORDER BY 要在后面
3. Limit 关键字
Limit是用来限制检索的行数。使用方法: limit 行数
有时我们检索数据时,并不想返回所有的数据,只想看有限的几条数据就可以。
比如我们想看看Top10城市销量。我们就可以只返回销量最高的10个城市就可以了,没必要返回所有城市。
这样做可以减少SQL的执行时间,也不会因为返回太多影响我们查看数据。
我们在之前的示例中增加 limit 子句,我们直接增加到末尾即可,示例如图
代码如下:
select
order_no,user_id,order_amount,
goods_name,goods_price,goods_num,create_time
from order_detail
order by order_amount desc,goods_price asc
limit 3;
4. 小结
ORDER BY 是平时较常用的子句,大家一定要多多练习哦,OK这里简单总结下本次内容。
本章讲授了
- 1、首先简单说明了Excel中自定义排序的方法
- 2、然后重点介绍了在SQL中使用ORDER BY进行排序
- 3、最后又讲了一个Limit子句,它经常与ORDER BY 配合使用
最后还是给大家配一张SQL子句的顺序表。这个顺序大家一定要遵守,否则SQL就无法执行。
本人程序员大叔一枚,混迹IT行业多年。近几年一直在大数据行业发展,工作中发现很多产品、运营、分析师并不会SQL,其实作为一个数据从业者,个人认为做数据的还是要会点SQL的好,具体好处自行百度吧。
有兴趣的朋友可以加关注,我尽量每周分享一点SQL知识给大家。
如果觉得我写的有什么不好的地方可以留言指出,尽量改正。