排序检索数据
- 编写者: Nirvanaliu;
- 日期 : 2019-10-09 22:58;
- 目的 : select + order by – 根据需要排序检索出的数据
3.1 排序数据
- order by 必须再 select语句中最后一条子句,如果不是最后一条语句则会出错
SELECT prod_name FROM Products ORDER BY prod_name;
3.2 按多个列排序
- 代码检索3个列,并按其中两个列对结果进行排序 – 首先按价格,然后按排名排序
SELECT prod_id,prod_price,prod_name
FROM Products
ORDER BY prod_price,prod_name;
需要理解的是,排序的优先级,只有再prod_price相同的时候,才会对prod_name进行排序,如果prod_price列中的所有值都是唯一的,则不会按照prod_name排序
3.3 按列位置排序
- order by支持按相对列位置进行排序
SELECT prod_id,prod_price,prod_name
FROM Products
ORDER BY 2,3;
- 列号 是看 select后的
- 2 列 指的是 prod_price
- 3 列 指的是 prod_name
3.4 指定排序方向
-- 单列 --
SELECT prod_id,prod_price,prod_name
FROM Products
ORDER BY prod_price DESC;
-- 多列 只对DESC之前的有效 默认升序--
SELECT prod_id,prod_price,prod_name
FROM Products
ORDER BY prod_price DESC,prod_name;
--简单的 order by 子句做不到 A a 的比较