sql搜索排序前十的数据_SQL 排序检索数据

使用SELECT语句中的ORDER BY子句排序检索数据。

1、单列排序检索

ORDER BY 列名;

eg:从产品表中查询产品名并按升序排列

输入:

SELECT prod_name

FROM products

order by prod_name;

输出:

fc86307d82274e1ca58532e953db49c4.png

注:ORDER BY必须为SELECT语句的最后一条子句

2、多列排序检索

ORDER BY 列名1,列名2,……

多列排序时,先按第一个列排序,对于第一个列中相同的行,按第二个列排序,以此类推。

eg:从产品表中查询产品ID、产品价格和产品名称,并先对产品价格升序排列,再对产品名称升序排列。

输入:

SELECT prod_id,prod_price,prod_name

FROM products

ORDER BY prod_price,prod_name;

输出:

5f02ae19d0f77c885e5fb9943f45e248.png

本例中,只对相同产品价格的行按产品名称升序排列

3、按列位置排序

ORDER BY子句除了用列名指出排序顺序外,还可以按SELECT后面列的相对位置排序。当排序的列不出现在SELECT清单中时,不能采用这种方法 。

eg:从产品表中查询产品ID、产品价格和产品名称,并先对产品价格升序排列,再对产品名称升序排列。

输入:

SELECT prod_id,prod_price,prod_name

FROM products

ORDER BY 2,3; -- 2,3表示先按价格排序,再按产品名排序

输出:

30be94cc8892264f1d7bb8b4584131fd.png

4、指定排序方向

ORDER BY默认升序排列(从A到Z),因此升序关键字ASC可有可无。若需降序排列,需指定关键字DESC。

ORDER BY 列名 DESC;

e:1:从产品表中查询产品ID、产品价格、和产品名称,并按产品价格降序排列。

输入:

SELECT prod_id,prod_price,prod_name

FROM products

ORDER BY prod_price DESC;

输出:

de3fc8e19339bfc06561ac1d2901793d.png

DESC关键字只作用在其前面的列名,当需要对多个列排序时,需要在每个列后加入关键字(升序可省略)。

eg2:从产品表中查询产品ID、产品价格、和产品名称,并先按产品价格降序排列,再按产品名称升序排列。

输入:

SELECT prod_id,prod_price,prod_name

FROM products

ORDER BY prod_price DESC,prod_name;-- 产品价格为降序,产品名称为升序

输出:

b662f08ad48016dfba9e3efd61787dd3.png

5、SQL运行顺序

f71a5073b4adc1c800b60c0116441f84.png

分享即学习,我会不定时的分享一些成长干货,包括学习方法、软件技能、优质书单/电影以及大学期间的经历。

欢迎参观我的公众号「胡健学习笔记」,和大家一起进步~

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值