我是靠谱客的博主 顺心小兔子,最近开发中收集的这篇文章主要介绍MySql排序单列排序多列排序自定义排序自定义排序+多列排序条件排序条件排序+多列排序,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

MySql排序

  • 单列排序
  • 多列排序
  • 自定义排序
    • 假如表中有一列state(状态),该列的值有0、1、2、3、4,现在需要按照1、0、2、4、3进行排序所以自定义排序order by field(state,1,0,2,4,3)
  • 自定义排序+多列排序
  • 条件排序
  • 条件排序+多列排序

单列排序

  1. 默认升序
    order by 列名;
  2. 升序
    order by 列名 asc;
  3. 降序
    order by 列名 desc;

多列排序

  1. 默认先按照列名1升序,再按照列名2升序
    order by 列名1,列名2;
  2. 先按照列名1升序,再按照列名2升序
    order by 列名1 asc,列名2 asc;
  3. 先按照列名1降序,再按照列名2降序
    order by 列名1 desc,列名2 desc;

自定义排序

假如表中有一列state(状态),该列的值有0、1、2、3、4,现在需要按照1、0、2、4、3进行排序所以自定义排序order by field(state,1,0,2,4,3)

  1. 默认升序1,0,2,4,3
    order by field(state,1,0,2,4,3);
  2. 升序1,0,2,4,3
    order by field(state,1,0,2,4,3) asc;
  3. 降序3,4,2,0,1
    order by field(state,1,0,2,4,3) desc;

自定义排序+多列排序

  1. 先state按照1,0,2,4,3升序排序,再按照id升序
    order by field(state,1,0,2,4,3) asc,id asc;
  2. 先state按照3,4,2,0,1降序排序,再按照id降序
    order by field(state,1,0,2,4,3) desc,id desc;

条件排序

  1. 把state=1的排在最前面,其他state列按自然顺序排列
    order by IF(state=1,0,1);
  2. 把state=1的排在最后面,其他state列按自然顺序排列
    order by IF(state=1,0,1) desc;
  3. 把state=1的排在最前面,其他state列升序
    order by IF(state=1,0,1),state asc;

条件排序+多列排序

  1. 先把state=1的排最前面,再根据id升序
    order by IF(state=1,0,1) asc,id asc;
  2. 先把state=1的排最后面,再根据id升序
    order by IF(state=1,0,1) desc,id asc;

本人菜鸟,今天刚好学习到这个所以就记录了下来,排序还有其他方式请大佬指教,有错误的地方也请大佬指正

最后

以上就是顺心小兔子为你收集整理的MySql排序单列排序多列排序自定义排序自定义排序+多列排序条件排序条件排序+多列排序的全部内容,希望文章能够帮你解决MySql排序单列排序多列排序自定义排序自定义排序+多列排序条件排序条件排序+多列排序所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(52)

评论列表共有 0 条评论

立即
投稿
返回
顶部