二维分组sql统计

 需求:按照公司和工单类型分组统计

思路先case when计数,再group公司id分组 sum求和就行了

SELECT 
r.name,
sum(w.sys_basic_bao_xiu_count) as "报修",
sum(w.sys_basic_bao_shi_count) as "报事",
sum(w.sys_basic_tou_su_count) as "投诉",
sum(w.sys_basic_jian_yi_count) as "建议"


from (
SELECT 
	 
		a.wkst_cust_id, 
(case when a.worksheet_type='sys_basic_bao_xiu' then 1 else 0 end) as sys_basic_bao_xiu_count,  
(case when a.worksheet_type='sys_basic_bao_shi' then 1 else 0 end) as sys_basic_bao_shi_count,  
(case when a.worksheet_type='sys_basic_tou_su' then 1 else 0 end) as sys_basic_tou_su_count,
(case when a.worksheet_type='sys_basic_jian_yi' then 1 else 0 end) as sys_basic_jian_yi_count

  
		 
		from crm_def_worksheet  a  ) as w

		LEFT JOIN  crm_def_wkst_customer c on w.wkst_cust_id=c.id
		LEFT JOIN  res_region r on c.field1 =r.id

  	where r.id  is not null
 
		GROUP BY r.id 

sql效果

おすすめ

転載: blog.csdn.net/zhaofuqiangmycomm/article/details/119757479