MySQL排序中使用CASE WHEN的方法示例
前言
在之前的一个项目中,使用到了SQL中使用 CASE WHEN 排序的功能。现在写篇博客备忘~
数据库版本:MySQL 5.6.42
条件:
某字段代表该数据的状态取值为非负整数,0表示无状态。
需求:
以该字段升序排序,同时需要将值为0的数据放在最后。
首先我们看一下,表的结构:
正常的使用升序查询结果是这样的:
要让“小赤”排在最后,可以这样写:
也可以这样:
还可以使用 CASE WHEN 再不影响查询结果的前提下,改变排序的依据:
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对我们的支持。
相关推荐
-
sql学习之CASE WHEN THEN ELSE END的用法
超强:SQL命令中的case...when...then...else...end条件查询(不同于where) 与 类型转换的用法 case...when...then...else...end,是在from前面,可以改变记录中某字段的值,不能决定是否显示该记录: where,是在from后面,不可以改变记录中某字段的值,但可以决定是否显示该记录. case...when...then...else...end,可用于对同一记录的多个字段求和,带分支判断. 另外,对字段判断和处理,往往需要强制类
-
MySQL中使用case when 语句实现多条件查询的方法
举例如下: 数据表为DemoTable,字段有id, condition1,condition2,condition3,condition4,condition5 要求是查询DemoTable中,condition1,condition2,condition3,condition4,condition5五个字段中符合任意两个或两个以上的条件的内容. 可使用case when来实现这个条件,需要嵌套子查询语句 sql语句代码示例如下: 复制代码 代码如下: SELECT * FROM DemoTa
-
MySQL 的CASE WHEN 语句使用说明
mysql数据库中CASE WHEN语句. case when语句,用于计算条件列表并返回多个可能结果表达式之一. CASE 具有两种格式: 简单 CASE 函数将某个表达式与一组简单表达式进行比较以确定结果. CASE 搜索函数计算一组布尔表达式以确定结果. 两种格式都支持可选的 ELSE 参数. 语法简单 CASE 函数: 复制代码 代码如下: CASE input_expression WHEN when_expression THEN result_expression
-
SQL集合函数中case when then 使用技巧
那么在集合函数中它有什么用呢 ? 假设数据库有一张表名为student的表. 如果现在要你根据这张表,查出江西省男女个数,广东省男生个数,浙江省男女个数 怎么写SQL语句?即要生成下结果表 答案是:select sex ,count ( case province when '广东省' then '广东省' end )as 广东省 ,count ( case province when '江西省' then '江西省' end )as 江西省 ,count ( case province whe
-
mysql case when group by 实例详解
mysql 中类似php switch case 的语句. select xx字段, case 字段 when 条件1 then 值1 when 条件2 then 值2 else 其他值 END 别名 from 表名; 下面是一个分组求和示例: select sum(redpackmoney) as stota,ischeck from t_redpack group by isCheck 使用case when : select sum(redpackmoney) as stota, (CAS
-
浅析SQL语句行列转换的两种方法 case...when与pivot函数的应用
/*创建数据库*/ CREATE DATABASE tmp go USE tmp go /*创建数据库测试表*/ CREATE TABLE [Scores] ( [ID] INT IDENTITY(1, 1) PRIMARY KEY , [Student] VARCHAR(20) , [Subject] VARCHAR(30) , [Score] FLOAT ) go TRUNCATE TABLE Sc
-
sum(case when then)(判断男女生的个数)
判断类似一个班级的男生和女生的人数,用sum (cese when then ) 复制代码 代码如下: select count(er.execute_result), sum(case er.execute_result when 1 then 1 else 0 end) completed, sum(case er.execute_result when 0 then 1 else 0 end) notCompleted from taw_wp_execute_result er ; 复制代
-
sql 中 case when 语法使用方法
没有,用case when 来代替就行了. 例如,下面的语句显示中文年月 复制代码 代码如下: select getdate() as 日期,case month(getdate()) when 11 then '十一' when 12 then '十二' else substring('一二三四五六七八九十', month(getdate()),1) end+'月' as 月份 CASE 可能是 SQL 中被误用最多的关键字之一.虽然你可能以前用过这个关键字来创建字段,但是它还具有更多用法.例
-
MySQL的CASE WHEN语句的几个使用实例
使用CASE WHEN进行字符串替换处理 复制代码 代码如下: mysql> select * from sales; 9 rows in set (0.01 sec) SELECT name AS Name, CASE category WHEN "Holiday" THEN "Seasonal" WHEN "Profession" THEN "Bi_annual" WHEN "Lit
-
关于case when语句的报错问题详解
前言 在mysql数据库中,有时候我们会使用到类似if else的判断操作.那么mysql中怎么处理这种需求呢? mysql 判断操作一种语法: case ..when语句 但最近在使用的时候遇到了一个问题,下面话不多说了,来一起看看详细的介绍吧 直接说明问题.我有一张存储身份证号码的表id_card_message,表结构和数据如下(MySQL5.7.14): mysql> select * from id_card_message; +------+--------------------+
随机推荐
- JQuery创建DOM节点的方法
- Nodejs 搭建简单的Web服务器详解及实例
- Java操作MongoDB数据库示例分享
- FasfDFS整合Java实现文件上传下载功能实例详解
- ASP.NET 提高首页性能的十大做法
- Android实现旋转,放大,缩小图片的方法
- Android实现TextView中文字链接的4种方式介绍及代码
- 那些精彩的JavaScript代码片段
- 24条货真价实的PHP代码优化技巧
- python Django模板的使用方法(图文)
- 可怜的兔子
- javascript制作游戏开发碰撞检测的封装代码
- 常用排序算法整理分享(快速排序算法、希尔排序)
- node.js缺少mysql模块运行报错的解决方法
- Android 中启动自己另一个程序的activity如何实现
- Java IO流 文件传输基础
- 如何在Android中实现左右滑动的指引效果
- 浅析Java中如何实现线程之间通信
- C#中深度复制和浅度复制详解
- 关于JavaScript语句后面的分号问题