mysql 多个字段排序 时的规则 一看就懂

 

 

多个字段排序可以使用 field函数,注意 该函数可以根据某列的不同值进行排序!

 

order by 在数据库中应该是比较常用的方法之一,下面简单的演示下order by的使用

一,单个字段

    格式:
    select * from product order by price desc
    影响:price 字段会排序,其他字段自然排序
 
1.png

二,多个字段

  格式:
  select * from product order by 字段A desc,字段B asc
  影响:数据会先按照第一个字段排序(price),如果第一个字段的值相同,再按照第二个字段排序!
   由上图可以知:表里name值为苹果和小米的price值是相同的,但是他们的order_count 值不同,苹果的
   order_count 大于 小米的。这个时候执行2条sql,分别都是price 排降序,    order_count 一条降序,
一条升序

order_count 降序:

     select * from product order by price desc,order_count desc
 
2.png

order_count 升序:

    select * from product order by price desc,order_count asc
 
3.png

对比2次不同的查询,出现了不同的结果,这验证我们前期的推断是正确的。当排序的第一个字段值相同时,才会使用到第二个字段的排序。否则第二个字段不会产生任何的影响。

 

总结 MYSQL 多个字段排序时,可以为每个字段设置排序方式,当然 实际情况 大部分都是多个字段按照统一方式排序




posted @ 2022-03-04 01:03  方东信  阅读(3637)  评论(0编辑  收藏  举报