在之前的一个项目中,使用到了SQL中使用 CASE WHEN 排序的功能。现在写篇博客备忘~

  数据库版本:MySQL 5.6.42

  条件:某字段代表该数据的状态取值为非负整数,0表示无状态。

  需求:以该字段升序排序,同时需要将值为0的数据放在最后。

  首先我们看一下,表的结构:

  

 

  正常的使用升序查询结果是这样的:

  

 

  要让“小赤”排在最后,可以这样写:

  

 

  也可以这样:

  

 

  还可以使用 CASE WHEN 再不影响查询结果的前提下,改变排序的依据:

  

版权声明:本文为CoderAnan原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/CoderAnan/p/10246093.html