MySQL 必知必会 第5章 排序检索数据(ORDER BY) 笔记

排序数据

  • 复习:返回单个列:
SELECT prod_name
FROM products;

在这里插入图片描述

  • 其结果是无序的
  • 子句(clause):SQL 语句由子句构成,有些必须,有些可选。一个子句通常由一个关键字和所提供的数据组成(例:SELECT中的 FROM 子句)
  • ORDER BY:可以对输出进行排序
SELECT prod_name
FROM products
ORDER BY prod_name;

在这里插入图片描述

  • 注意:可以使用非选择的列进行排序,比如
SELECT prod_name
FROM products
ORDER BY prod_id;

在这里插入图片描述

按多个列排

  • 首先按价格,然后按名称排序:
SELECT prod_id, prod_price, prod_name
FROM products
ORDER BY prod_price, prod_name;

在这里插入图片描述

指定排序方向

  • DESC 指定降序排列
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;

在这里插入图片描述

  • 注意:DESC 只作用到位于其前面的列名,因此上述的意义是先按价格降序,再按名字升序

  • 如果想要在多个列上降序,那么每个列名后面都要写上 DESC

  • 与其相对的升序是 ASC ,由于升序是默认的,因此可以不写

  • ORDER BY, LIMIT 可以找出一个列中最高或最低的值:

SELECT prod_price
FROM products
ORDER BY prod_price DESC
LIMIT 1;

在这里插入图片描述

  • 注意:要确保 ORDER BYFROM 子句的后面,确保 LIMITORDER BY 子句的后面
posted @ 2020-08-07 09:48  winechord  阅读(88)  评论(0编辑  收藏  举报