sql必知必会3-排序检索数据

作者: liluchang 分类: 数据库 发布时间: 2018-03-14 17:03

查询数据的过程中,如果不明确控制的话,那么最终的结果不能(也不应该)依赖该顺序排序。关系数据库设计理论认为,如果不明确规定排序顺序,则不应该假定检索出来的数据的顺序有任何意义。

select prod_name from products order by prod_name;

上面的语句将对结果按照prod_name排序,如果没有排序方式,按照升序方式排序。指定一条order by 子句的时候,请确定这个子句是该语句的最后一条子句。否则会报错。我们也可以使用不是我们查询的字段来排序,这个是合法的。

如我我们需要按照多个列排序,那么只需要在order by子句后面加上多个字段,用,分开,例如

select prod_id,prod_price,prod_name from products order by prod_price,prod_name;

上面的内容就会直接先按照prod_price排序,然后按照prod_name排序。

我们可以指定排序的方式,不仅仅限于升序,降序也可以,升序为asc,降序为desc。例如

//prod_price降序,prod_name升序
select prod_price,prod_name from product order by prod_price desc,prod_name;

上面的例句是按照价格降序,姓名升序,如果需要姓名也降序,需要

order by prod_price desc,prod_name desc;

上面是排序子句,desc或者asc等,必须每个字段跟一个,且要放在字段后面。如果没有添加,默认升序排序,所以我们很少会在order by后面看到asc。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

标签云