一般求和
select sum(money) from user group by id;
按条件求和 (对所有金额大于100的数据进行求和)
select sum(if(money>=100,money,0)) from user group by id;
聚合函数中如果想汇总某一类数据的数量,可以在括号中增加条件:
sum(case when 字段>0 then 1 else 0 end) as 字段
第一步:执行FROM
第二步:WHERE条件过滤
第三步:GROUP BY分组
第四步:执行SELECT投影列
第五步:HAVING条件过滤
第六步:执行ORDER BY 排序
sum()函数一般求和select sum(money) from user group by id;按条件求和 (对所有金额大于100的数据进行求和)select sum(if(money>=100,money,0)) from user group by id;聚合函数中如果想汇总某一类数据的数量,可以在括号中增加条件:sum(case when 字段>0 then 1 else 0 end) as 字段count()函数要注意的是:count(case when 字段>
sum
(case when t.ride_num=1 then 1 else 0 end ) as ride_1_times
count
(case when t.ride_num=1 then 1 else nullend ) as ride_1_times
count
(case when t.ride_num=1 then 1 end ) as ride_1_times
then=...
数据库查询相信很多人都不陌生,所有经常有人调侃程序员就是CRUD专员,这所谓的CRUD指的就是数据库的增删改查。
在数据库的增删改查操作
中
,使用最频繁的就是查询操作。而在所有查询操作
中
,统计
数量
操作更是经常被用到。
关于数据库
中
行数统计,无论是
MySQL
还是Oracle,都有一个
函数
可以使用,那就是
COUNT
。
但是,就是这个常用的
COUNT
函数
,却暗藏着很多玄机,尤其是在面试的时候,一不小心就会...
最近发现在处理
Mysql
问题时,
count
()
函数
频繁上镜,常常出现在分组统计的情景下,但是有时候并不是使用group by分好组就可以直接统计了,比如说一个常见的需求,统计每个班级男生所占的比例,这种情况一般会按照班级分组,但是分组内不但要统计班级的人数,还要统计男生的人数,也就是说统计是有
条件
的,之前确实没有考虑过怎样实心,后来查询了资料,总结在这里...
Mysql
中
c...
SELECT
count
(1) as totalnum ,
sum
(CASE order_state WHEN 1 THEN 1 ELSE 0 END ) AS newSend,
sum
(CASE order_state WHEN 2 THEN 1 ELSE 0 END) as ss,
sum
(CASE order_state WHEN 3 THEN 1 ELSE 0 END)