前言

经常会遇到根据不同的条件统计总数的问题,一般有两种写法:count和sum都可以
数据准备:

方法一 :Count

代码:

SELECTCOUNT(CASEWHEN age > 20AND age < 25 THEN1ELSENULLEND) AS cnt0,COUNT(CASEWHEN age >= 25AND age < 30 THEN1ELSENULLEND) AS cnt1
FROMUSER;

结果:

方法二:sum

代码:

SELECTSUM(CASEWHEN age > 20AND age < 25 THEN1ELSE0END) AS cnt0,SUM(CASEWHEN age >= 25AND age < 30 THEN1ELSE0END) AS cnt1
FROMUSER;

结果:

当然也可以和count代码一样ELSE后面也写为NULL

SELECTSUM(CASEWHEN age > 20AND age < 25 THEN1ELSENULLEND) AS cnt0,SUM(CASEWHEN age >= 25AND age < 30 THEN1ELSENULLEND) AS cnt1
FROMUSER;

后记

其实原理很简单,count统计的时候有满足条件的就加1,没有满足的变为NULL,我们知道聚合函数统计的时候是忽略null值的;而sum原理和coun相似,不过ELSE后面可以是0或者NULL。

Sql根据不同条件统计总数相关推荐

  1. SQLServer查询多条件统计总数

    业务需求:根据不同条件查询统计出总价钱 select SUM(case when status=0 then price else 0 end) A, SUM(case when status=5 t ...

  2. sql分组按条件统计

    1. 统计每个班级男生女生数量以及总人数 sex:1:男生  2:女生 class:班级   (根据班级分组) SELECT COUNT(CASE WHEN (sex = 1) THEN class ...

  3. SQL分组多列统计(GROUP BY后按条件分列统计)

    最近遇到一个问题,需要对一张表做统计,这个统计有什么特别之处值得我记录了下来呢?大家知道SQL中聚合函数GROUP BY的结果一般为一列,即多个值通过聚合函数运算统计到一起,但是如何将不同条件的值统计 ...

  4. oracle 算列总数,Oracle认证:Oracle统计符合条件列总数

    Oracle认证:Oracle统计符合条件列总数.最近在项目报表中需要一个查询语句,用来统计符合某一列条件的其它几列的个数. 比如有下面一个表结构: 需要在列D后面增加一列,统计在列A不为空,并且列B ...

  5. MySQL统计总数就用count,别花里胡哨的《死磕MySQL系列 十》

    有一个问题是这样的统计数据总数用count(*).count(主键ID).count(字段).count(1)那个效率高. 先说结论,不用那么花里胡哨遇到统计总数全部使用count(*). 但是有很多 ...

  6. oracle查询多个条件查询,ORACLE多条件统计查询的简单方法

    前几天要做一个统计查询的功能,因为涉及多张表,多种条件的统计分析.一开始便想到了UNION和IF语句,然后写了1000多行代码,就为了查30条数据觉得不应该. @H_301_2@ 然后就开始百度,多种 ...

  7. count 有条件 mysql_【笔记】Mysql中使用count加条件统计

    前言mysql 最近发如今处理Mysql问题时,count()函数频繁上镜,经常出如今分组统计的情景下,可是有时候并非使用group by分好组就能够直接统计了,好比说一个常见的需求,统计每一个班级男 ...

  8. SQL Server统计信息以及如何在SQL中执行更新统计信息

    This article gives a walk-through of SQL Server Statistics and different methods to perform SQL Serv ...

  9. SQL协同Excel制表统计各学院一二三等奖

    今天总算是考完了,然而刚出考场,就接到了任务,要求对全校863个校内获奖项目进行统计处理,天.. SQL协同Excel制表统计各学院一二三等奖 需求 现有EXCEL表一张,内含以下字段,和近900条数 ...

最新文章

  1. Fedora 17 install VMWare tool
  2. C#获取电脑IP、MAC地址示例代码
  3. SpringBoot+Mybatis 框架之 @SelectProvider注解方式搭建
  4. element el-tree 懒加载 默认展开第二层
  5. 废旧纸箱做机器人图片_制作纸箱板画(适合1112岁孩子们)
  6. sql语句执行步骤详解
  7. Visual Studio 2008中的jQuery Intellisense
  8. python内置对象是什么_Python的内置对象类型——元组、文件,python
  9. red hat linux基本命令行,Red Hat Enterprise Linux4 一些常用命令总结
  10. 图神经网络:Graph Neural Networks
  11. 《非常网管:网络管理从入门到精通(修订版)》一1.4 TCP/IP
  12. 全网最简单解决OneNote中英字体不统一
  13. 地震数据的获取与处理
  14. 微信小程序网络请求服务器php接口获取数据库数据信息
  15. 64 ---- 平面与直线的位置关系
  16. 唐诗学习系统-java课程设计
  17. UE4面试基础知识(一)
  18. Python安装包时遇到There was a problem confirming the ssl certificate…的解决办法
  19. 无心剑汉英双语诗003. 《书海》
  20. Mybatis-plus学习-最全细致讲解

热门文章

  1. RectTransformUtility.ScreenPointToWorldPointInRectangle使用说明
  2. python之路第一天
  3. 12行Python暴力爬《黑豹》豆瓣短评
  4. PHP导出MySQL数据字典 Summer-Mysql-Dic
  5. redis基础学习(一)— 配置项
  6. 535 5.7.8 Error: authentication failed: generic failure安装EMOS时SMTP测试报错
  7. mysql高可用性方案(2)
  8. 黑盒测试实践---day2
  9. web.config中namespace的配置(针对页面中引用)
  10. 贪心 FZU 2013 A short problem