count()函数里面想实现带条件统计,可以使用SUM函数来进行替换
程序员文章站
2022-05-07 16:32:00
...
count()函数里面想实现带条件统计,可以使用SUM函数来进行替换,具体可以使用case when 语句或者Decode函数来对要统计的数据进行0、1转换,
如下例子:
SELECT s.user_id,SUM(case(m.is_success) when 1 then 1 else 0 end),SUM(case when m.read_time IS NULL then 0 else 1 end),COUNT(*)
from doc_score s,mail_send_log m where s.user_id in(6,7,8,9) and s.status = 1 and m.doc_id = s.doc_id
group by s.user_id
;
如下例子:
SELECT s.user_id,SUM(case(m.is_success) when 1 then 1 else 0 end),SUM(case when m.read_time IS NULL then 0 else 1 end),COUNT(*)
from doc_score s,mail_send_log m where s.user_id in(6,7,8,9) and s.status = 1 and m.doc_id = s.doc_id
group by s.user_id
;
上一篇: Redis主从复制与哨兵机制
下一篇: Photoshop简单制作螺旋图形效果