《MySQL必知必会》学习笔记——第五章(排序检索数据)


前文链接:
《MySQL必知必会》——书中表的生成
《MySQL必知必会》——第三章(了解数据库和表) 关键词:USE、SHOW
《MySQL必知必会》——第四章(检索数据) 关键词:SELECT

5.1 单一列排序

ORDER BY 语句可以对我们检索出的数据进行排序,具体举例如下:

# 我们对表products 中的 prod_name 列排序输出
SELECT prod_name FROM products order by prod_name;

5.2 多列排序

SELECT prod_id, prod_price, prod_name FROM products order by prod_price, prod_name;

我们按照上面的举例说明,我们对于选取的 prod_id, prod_price, prod_name这三列数据,先按照prod_price去排序,当多行具有相同的prod_price时,才按照prod_name去排序,以此类推!

5.3指定排序方向

ORDER BY语句默认的是升序,若要降序,我们要加上DESC关键词,具体我们举例看看:

单列降序
# 按照 prod_price 列降序输出:
SELECT prod_id, prod_price, prod_name FROM products order by prod_price DESC;
多列降序

先看个例子

SELECT prod_id, prod_price, prod_name FROM products order by prod_price DESC, prod_name;

这时数据按照 prod_price 降序输出,对于具有相同 prod_price 的行,再按照 prod_name 升序给出!

注意:

  • DESC 只作用于直接位于其前面的列命
  • 对于多列排序,若都想降序输出,那么列名之后都应加上DESC

下面的语句,先按照prod_price 降序,对于具有相同值得prod_price 数据,再按照 prod_name 降序输出!

# 按照prod_price 和 prod_name 降序
SELECT prod_id, prod_price, prod_name FROM products order by prod_price DESC, prod_name DESC;
获取最大最小值

我们可以将ORDER BY 和 LIMIT 结合获取最大值或最小值,例如:

# 获取最小值
SELECT prod_price FROM products order by prod_price LIMIT 1;
# 获取最大值
SELECT prod_price FROM products order by prod_price DESC LIMIT 1;

总结:

  • SELECT 列名 FROM 表名 ORDER BY 列名:按照列名升序输出
  • SELECT 列名 FROM 表名 ORDER BY 列名 DESC:按照列名降序输出
  • SELECT 列名 FROM 表名 ORDER BY 列名 LIMIT 1:返回最小值
  • SELECT 列名 FROM 表名 ORDER BY 列名 DESC LIMIT 1:返回最大值
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值