首页 > 解决方案 > SQL 计算区域 A 和 B 的每个销售人员的销售关闭百分比

问题描述

我有一个数据集(sales_dataset),其中每一行代表一次销售尝试,并且有 3 列显示销售人员(sales_person)、区域(region)以及尝试是否成功(sale)。该表可以在这里看到:

数据集

我正在尝试计算区域 A 和 B 的每个销售人员分组的成功销售百分比,但我似乎无法弄清楚如何做到这一点,即我正在尝试为每个 sales_person 找到(成功销售/总销售额)区域 A 和 B。您可以在此处看到我要生成的图像:

目标

到目前为止,我得到的最远的是为每个销售人员生成成功销售的计数,使用以下查询:

SELECT sales_person, Count(sale) as "Sales Rate %"
FROM sales_dataset
Where sale = "Sale" AND region = "A" OR "B"
Group By sales_person

谢谢!

标签: sql

解决方案


您可以使用avg()

select sales_person,
       avg(case when sale = 'Sale' then 1.0 else 0 end) as sales_rate
from sales_dataset
where region in ('A', 'B')
group by sales_person;

推荐阅读