Sql根据不同条件统计总数
前言
经常会遇到根据不同的条件统计总数的问题,一般有两种写法: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根据不同条件统计总数相关推荐
- SQLServer查询多条件统计总数
业务需求:根据不同条件查询统计出总价钱 select SUM(case when status=0 then price else 0 end) A, SUM(case when status=5 t ...
- sql分组按条件统计
1. 统计每个班级男生女生数量以及总人数 sex:1:男生 2:女生 class:班级 (根据班级分组) SELECT COUNT(CASE WHEN (sex = 1) THEN class ...
- SQL分组多列统计(GROUP BY后按条件分列统计)
最近遇到一个问题,需要对一张表做统计,这个统计有什么特别之处值得我记录了下来呢?大家知道SQL中聚合函数GROUP BY的结果一般为一列,即多个值通过聚合函数运算统计到一起,但是如何将不同条件的值统计 ...
- oracle 算列总数,Oracle认证:Oracle统计符合条件列总数
Oracle认证:Oracle统计符合条件列总数.最近在项目报表中需要一个查询语句,用来统计符合某一列条件的其它几列的个数. 比如有下面一个表结构: 需要在列D后面增加一列,统计在列A不为空,并且列B ...
- MySQL统计总数就用count,别花里胡哨的《死磕MySQL系列 十》
有一个问题是这样的统计数据总数用count(*).count(主键ID).count(字段).count(1)那个效率高. 先说结论,不用那么花里胡哨遇到统计总数全部使用count(*). 但是有很多 ...
- oracle查询多个条件查询,ORACLE多条件统计查询的简单方法
前几天要做一个统计查询的功能,因为涉及多张表,多种条件的统计分析.一开始便想到了UNION和IF语句,然后写了1000多行代码,就为了查30条数据觉得不应该. @H_301_2@ 然后就开始百度,多种 ...
- count 有条件 mysql_【笔记】Mysql中使用count加条件统计
前言mysql 最近发如今处理Mysql问题时,count()函数频繁上镜,经常出如今分组统计的情景下,可是有时候并非使用group by分好组就能够直接统计了,好比说一个常见的需求,统计每一个班级男 ...
- SQL Server统计信息以及如何在SQL中执行更新统计信息
This article gives a walk-through of SQL Server Statistics and different methods to perform SQL Serv ...
- SQL协同Excel制表统计各学院一二三等奖
今天总算是考完了,然而刚出考场,就接到了任务,要求对全校863个校内获奖项目进行统计处理,天.. SQL协同Excel制表统计各学院一二三等奖 需求 现有EXCEL表一张,内含以下字段,和近900条数 ...
最新文章
- Fedora 17 install VMWare tool
- C#获取电脑IP、MAC地址示例代码
- SpringBoot+Mybatis 框架之 @SelectProvider注解方式搭建
- element el-tree 懒加载 默认展开第二层
- 废旧纸箱做机器人图片_制作纸箱板画(适合1112岁孩子们)
- sql语句执行步骤详解
- Visual Studio 2008中的jQuery Intellisense
- python内置对象是什么_Python的内置对象类型——元组、文件,python
- red hat linux基本命令行,Red Hat Enterprise Linux4 一些常用命令总结
- 图神经网络:Graph Neural Networks
- 《非常网管:网络管理从入门到精通(修订版)》一1.4 TCP/IP
- 全网最简单解决OneNote中英字体不统一
- 地震数据的获取与处理
- 微信小程序网络请求服务器php接口获取数据库数据信息
- 64 ---- 平面与直线的位置关系
- 唐诗学习系统-java课程设计
- UE4面试基础知识(一)
- Python安装包时遇到There was a problem confirming the ssl certificate…的解决办法
- 无心剑汉英双语诗003. 《书海》
- Mybatis-plus学习-最全细致讲解
热门文章
- RectTransformUtility.ScreenPointToWorldPointInRectangle使用说明
- python之路第一天
- 12行Python暴力爬《黑豹》豆瓣短评
- PHP导出MySQL数据字典 Summer-Mysql-Dic
- redis基础学习(一)— 配置项
- 535 5.7.8 Error: authentication failed: generic failure安装EMOS时SMTP测试报错
- mysql高可用性方案(2)
- 黑盒测试实践---day2
- web.config中namespace的配置(针对页面中引用)
- 贪心 FZU 2013 A short problem