sum case when 条件筛选

这个用法在项目中用了好几次了,所以在此记录下来。

SELECT
c.*, sum(
CASE
WHEN (a. STATUS = 1 OR a. STATUS IS NULL) THEN
1
ELSE
0
END
) AS articleNum,
SUM(a.read_num) AS readNum
FROM
sky_information_category c

附上一张照片。。来源http://database.51cto.com/art/201107/279732.htm

时间: 2024-10-20 09:04:12

sum case when 条件筛选的相关文章

MySQL对sum()字段 进行条件筛选,使用having,不能用where

显示每个地区的总人口数和总面积.仅显示那些面积超过1000000的地区. SELECT region, SUM(population), SUM(area) FROM bbc GROUP BY region HAVING SUM(area)>1000000 在这里,我们不能用where来筛选超过1000000的地区,因为表中不存在这样一条记录.相反,having子句可以让我们筛选成组后的各组数据

SQL CASE 多条件用法

Case具有两种格式.简单Case函数和Case搜索函数. --简单Case函数 CASE sex          WHEN '1' THEN '男'          WHEN '2' THEN '女' ELSE '其他' END --Case搜索函数 CASE WHEN sex = '1' THEN '男'          WHEN sex = '2' THEN '女' ELSE '其他' END 这两种方式,可以实现相同的功能.简单Case函数的写法相对比较简洁,但是和Case搜索函数

关于进行条件筛选的SQL关键字的一点理解

概述 一般能够用于条件筛选的有三种: ON: 联结(join)筛选 WHERE: 一般条件筛选 HAVING: 分组后的条件筛选 ON JOIN – ON 语句的执行顺序: 例句: SELECT * FROM A LEFT JOIN B ON A.ID = B.ID AND A<>0 WHERE A.name = 'x' 注意在作on 连接后 的and 子句 和where 子句 . 他们有什么不同? 逻辑上解释:(不考虑执行计划中执行步骤和作嵌套连接等具体方式,这里只讨论如何思考逻辑上的步骤)

【编程题目】求1+2+…+n, 要求不能使用乘除法、for、while、if、else、switch、case和条件语句

看到这个问题,第一个反应是真变态啊. 然后,直觉是不能用循环就只能用递归了.可递归怎么跳出来却遇到了麻烦, 我连goto语句都考虑了也没弄好. 后来想到一个非常NC的方法:查找表. 如果n限定一个比较小的范围直接用查找表好了. 但题目的目的肯定不是这样的..... 后来,我转换了一下思路 1+2...+n = (n*n + n)>>1  只要求出n*n来就好了, 但问题是不能用乘法,于是硬件出身的我想到了二进制&,|,>>,<<都是可以用的. 思路:设n = 5

MySQL巧用sum,case...when...优化统计查询

最近在公司做项目,涉及到开发统计报表相关的任务,由于数据量相对较多,之前写的查询语句查询五十万条数据大概需要十秒左右的样子,后来经过老大的指点利用sum,case...when...重写SQL性能一下子提高到一秒钟就解决了.这里为了简洁明了的阐述问题和解决的方法,我简化一下需求模型. 现在数据库有一张订单表(经过简化的中间表),表结构如下: CREATE TABLE `statistic_order` ( `oid` bigint(20) NOT NULL, `o_source` varchar

iOS: 悬浮的条件筛选框使用二

一.介绍: 在前面已经介绍了一种条件悬浮框,使用的是tableView的Plain分组样式实现的,因为这是tableView本身就具备的功能,分组悬浮效果.这次我来介绍第二种更加简单的方法,采用两个ScrollView来实现. 二.实现技术: (1)两个ScrollView,一个是左右滚动,成为内容视图,另一个是上下滚动,作为容器视图: (2) 创建头视图,头视图中有banner图和条件筛选框,标记banner图的高: (3)合理设置上下滚动的容器视图的frame,它承载头视图和内容视图,不过需

Jquery特效之=》仿京东多条件筛选特效

仿京东多条件筛选特效 品牌: 全部 惠普(hp) 联想(Lenovo) 联想(ThinkPad) 宏基(acer) 华硕 戴尔 三星 索尼 东芝 Gateway 微星 海尔 清华同方 富士通 苹果(Apple) 神舟 方正 优雅 价格: 全部 1000-2999 3000-3499 3500-3999 4000-4499 4500-4999 5000-5999 6000-6999 7000-9999 10000以上 尺寸: 全部 8.9英寸及以下 11英寸 12英寸 13英寸 14英寸 15英寸

HBase多条件筛选查询方案

最近的项目需要使用Hbase做实时查询,由于Hbase只支持一级索引,也就是使用rowkey作为索引查询,所以对于多条件筛选查询的支持不够,在不建立二级索引的情况下,只能使用Hbase API中提供的各种filter过滤器进行筛选,感觉查询效率不太理想,于是考虑建立二级索引的方案. 经过google学习网上前辈们的经验,暂时找到两种可用的方案: 使用Hbase协处理器Coprocessor在写入数据时,创建二级索引表,并将每条数据的索引写入二级索引表中,查询时先根据筛选条件查询二级索引表,获取相

每天努力一点之SQL(二) count sum case when then group by

1. select sum(CASE WHEN A.[STATUS]=0 THEN 1 ELSE 0 end) as a1,  sum(CASE A.[STATUS] WHEN 1 THEN 1 ELSE 0 end) as a2,  sum(CASE A.[STATUS] WHEN 2 THEN 1 ELSE 0 end) as a3, A.UserId,C.TrainId  from CoursewareLogMiddle A join LessonDetail B   on A.Lesso