我正在尝试建立“转销商的产品渗透率表”
我有三个表,分别是转销商,产品1和产品2。
表1:
ResellerID
001
002
003
表2 --------------------------------------------表3
Customer# - Prod# - ResellerID | Customer# - Prod# - ResellerID
ABC - 1-2 - 001 | GHI - 9-8 - 001
DEF - 3-4 - 002 | JKL - 9-8 - 002
ABC - 3-4 - 001 | MNO - 7-6 - 003
我需要茶几的结果如下:
ResellerID(PK) - (Unique)CountofCustomer - (Unique)CountofProduct
001 - 2 - 3
002 - 2 - 2
003 - 1 - 1
我将基本表构建为作为1个客户表的参考,并构建了Final表,但是我无法弄清楚如何通过转销商获取唯一计数并将其重新插入适当的行中(之后,数学将使我获得渗透力。
对此将提供任何帮助。
谢谢
答案 0 :(得分:1)
我建议使用union all
和group by
:
select ResellerID, count(distinct Customer), count(distinct prod)
from ((select Customer, Prod, ResellerID from table2
) union all
(select Customer, Prod, ResellerID from table3
)
) t
group by ResellerID;