MySQL排序中使用CASE WHEN的方法示例

时间:2021-10-12 07:55:11

前言

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

数据库版本:MySQL 5.6.42

条件:

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

需求:

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

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

MySQL排序中使用CASE WHEN的方法示例

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

MySQL排序中使用CASE WHEN的方法示例

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

MySQL排序中使用CASE WHEN的方法示例

也可以这样:

MySQL排序中使用CASE WHEN的方法示例

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

MySQL排序中使用CASE WHEN的方法示例

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对服务器之家的支持。

原文链接:http://www.cnblogs.com/CoderAnan/p/10246093.html