什么时候使用case?case的作用?

比如现在的需求是查询一张表中,ID为0~20标记为TOP,ID为21~30标记为Center,ID为其他值则标记为Other,设置标记字段为type,则使用case的查询方法:

select id,case when id > 0  and id <= 20 then 'TOP'when id >20  and id <= 30 then 'Center'else 'Other'end as typefrom taskConfig

查询的结果:


case等于是增加查询结果集的一个字段,这个字段的值是可控制的。下面是增加group by 和having的结合使用

select mainversion,casewhen positionid=1 and itemid=44 then 1when positionid=93 and itemid=2 then 93else 0end as sourcefrom GameCenterLogs_20160106where mainversion is not nullgroup by sourcehaving source > 0;

查询的结果:


可以说case增加的字段和普通查询的字段没什么区别,可以灵活使用。

mysql case结合group+having使用相关推荐

  1. mysql case when 去重_【Mysql】 case ... when ... 用法

    mysql case when用法 SELECT CASE WHEN `categoryid` =1THEN '参赛队员'ELSE '指导老师'END FROM `blog_article` WHER ...

  2. mysql case 连接_mysql case when的用法是什么

    mysql case when的用法是:1.用作简单搜索,语法为[CASE [col_name] WHEN [value1]]:2.用作搜索函数,语法为[CASE WHEN [expr] THEN [ ...

  3. mysql case快捷方法_MySQL case when使用方法实例解析

    首先我们创建数据库表: CREATE TABLE `t_demo` ( `id` int(32) NOT NULL, `name` varchar(255) DEFAULT NULL, `age` i ...

  4. MySQL组提交(group commit)

    MySQL组提交(group commit) 前提: 以下讨论的前提 是设置MySQL的crash safe相关参数为双1: sync_binlog=1 innodb_flush_log_at_trx ...

  5. mysql group b_mysql报错之5.7版本的 group by mysql不能使用group by

    mysql 查询提示 SELECT list is not in GROUP BY clause and contains nonaggregated column 'user_login.user_ ...

  6. [MySQL 5.6] MySQL 5.6 group commit 性能测试及内部实现流程

    [MySQL 5.6] MySQL 5.6 group commit 性能测试及内部实现流程 http://mysqllover.com/?p=581 尽管Mariadb以及Facebook在long ...

  7. mysql:取group by第一条数据

    mysql:取group by第一条数据 示例数据(表enterprise_info) SELECT * FROM enterprise_info; id name gdp update_time 1 ...

  8. mysql按年月排序group by升序_排序-在MySQL中按GROUP BY名称之前的日期和时间排序

    排序-在MySQL中按GROUP BY名称之前的日期和时间排序 我有这样一张桌子: name date time tom | 2011-07-04 | 01:09:52 tom | 2011-07-0 ...

  9. MySQL数据库之GROUP BY用法

    1.MySQL数据库之GROUP BY的常规用法 group by的常规用法是配合聚合函数,利用分组信息进行统计,常见的是配合max等聚合函数筛选数据后分析,以及配合having进行筛选后过滤. 聚合 ...

  10. MySQL查询优化:GROUP BY

    目录 一.group by group by 优化方法 - 索引 松散索引扫描(Loose Index Scan) 为什么松散索引扫描的效率会很高? 紧凑索引扫描(Tight Index Scan) ...

最新文章

  1. anaconda切换python版本及对应环境,太方便
  2. poj 3349 雪花
  3. 创建Unicode格式的INI文件
  4. # 20175213 2018-2019-2 《Java程序设计》第1周学习总结
  5. simantaneous AJAX call triggered for Kyma plugin
  6. mysql中max_allowed_packet参数的配置方法(避免大数据写入或者更新失败)
  7. Idea创建web项目,配置tomcat服务器
  8. Angular之ngx-permissions的控制视图访问
  9. 如何配置IIS日志信息
  10. 基于朴素贝叶斯分类器的西瓜数据集 2.0 预测分类_第十章:利用Python实现朴素贝叶斯模型
  11. String 尺取法
  12. 前端学习之--CSS
  13. sp3485调试:sp3485-TTL转max485模块-TTL转usb模块电脑pc
  14. python中将字符变为大写_python3.4.3将汉字转换为大写拼音首字母
  15. 【报告分享】第二届中国工业互联网大赛成果汇编-中国工业互联网大赛组委会(附下载)
  16. DirectAdmin教程-初级
  17. kafka offset 机制
  18. 在奋斗的日子里,傻笑出来
  19. jQuery 上拉加载更多
  20. 使用C语言绘制一个笑脸smile

热门文章

  1. 修改chrome中HTML元素,自由更改网页中的任何内容:Hack this page
  2. pythonmkdir语法错误_转--python使用mkdir函数出现错误WindowsError:[Error3]
  3. mysql 覆盖式索引_【MySQL】性能优化之 覆盖索引
  4. 死于决斗的数学天才伽罗瓦-人生的有限域
  5. 算法_EXCEL中 A表示第一列,B表示第二列...AA表示27列,AB表示28列,问随意一组字母是多少列
  6. 论文笔记_S2D.07-2017-CVPR-RefineNet: 用于高分辨率语义分割的多路径精细网络
  7. 计算机视觉中,目前有哪些经典的目标跟踪算法?
  8. RGPNET: A real-time general purpose semantic segmentation(复杂环境下实时通用语义分割网络)
  9. VMware下安装CentOS
  10. Android新版NDK环境搭建