【发布时间】:2019-03-27 06:19:50
【问题描述】:
我需要对潜在客户数据库运行查询,该数据库需要细分商店名称、该商店的潜在客户总数以及转换后的潜在客户总数。到目前为止,以下是我得到的:
SELECT stores.store_name as Store, COUNT(*) as "Total Lead",
(SELECT COUNT(*) as "Converted Lead" FROM leads WHERE lead_status_id = 5)
FROM "leads"
INNER JOIN "employee_leads" ON "employee_leads"."lead_id" = "leads"."id"
INNER JOIN "employees" ON "employees"."id" = "employee_leads"."employee_id"
INNER JOIN "emp_stores" ON "emp_stores"."employee_id" = "employees"."id"
INNER JOIN "stores" ON "stores"."id" = "emp_stores"."store_id"
GROUP BY store_name;
但是,这是错误的,因为转换的部分计算了所有转换的潜在客户,而不是某个商店。我得到的结果如下:
+------------+-------------+----------------+
| Store | Total Lead | Converted Lead |
+------------+-------------+----------------+
| Store1 | 10 | 10 |
| Store2 | 14 | 10 |
| Store3 | 17 | 10 |
+------------+-------------+----------------+
目前在“已转化的潜在客户”列中列出了所有商店中已转化的潜在客户总数。 “Converted Lead”列假设 Store1 为 4,Store2 为 3,Store3 为 4。我试图做 sub-groupby,但是,我得到了一个错误,因为每个商店会有超过 1 行。我需要查询计算每个商店的转换潜在客户,如下所示:
+------------+-------------+----------------+
| Store | Total Lead | Converted Lead |
+------------+-------------+----------------+
| Store1 | 10 | 4 |
| Store2 | 14 | 3 |
| Store3 | 17 | 4 |
+------------+-------------+----------------+
有人能指出我正确的方向吗?谢谢
【问题讨论】: