问题描述:多张表组合group by查询后,在每个组中按照一定的条件进行计数。
解决思路:
1.每一个条件都使用group by进行查询,再将多个查询作为子查询组合到一个完整的查询里面(评价:该方法查询耗时会比较久)
2.不用子查询,在sum聚合函数中使用case when ... then ... else ... end
select
月份,
sum(case when 销售人员='姓名1' then 销售数量*产品单价 else 0 end) as 姓名1销售额,
sum(case when 销售人员='姓名2' then 销售数量*产品单价 else 0 end) as 姓名1销售额,
sum(case when 销售人员='姓名3' then 销售数量*产品单价 else 0 end) as 姓名1销售额
from 表格
group by 月份,销售人员
网友评论