我有一个销售数据集,其中每行包含帐户ID和他们购买的一个产品。一个帐户ID可以购买一些产品,这意味着同一个帐户ID可能有多个行。
在Excel中,我计算了每种产品,其中最畅销的50种产品是什么。例如,有2000个账户购买了产品A并且还购买了产品B,总共有5000个账户购买了产品A.因此,A和B有2000个重叠账户和3000个非重叠账户。
问题是这些计算不是基于个人帐户级别,而是所有帐户的总和。如果我想找出那些3000个不重叠的帐户,我不能在excel中这样做,因为它已经超过了excel的能力。我有25000多个帐户和700多个产品,所以想象一下组合的数量。
我想在SQL中做,但我不知道如何。到目前为止,我在SQL Server 2012中有这个数据透视表。最左边的列是帐户ID,右边的列是产品。每个产品都是一列。该表将显示每个不同的帐户ID,他们购买的产品。它将是空白或1.下面是我从Excel复制的矩阵,抱歉它看起来有点乱。
Account ID Product A Product B Product C Product D Product E Product F Product G
0014000000aSrFoAAK 1 1 1
0014000000aSsteAAC
0014000000aStJBAA0 1 1 1
0014000000aSvsqAAC 1 1
0014000000aSxtSAAS 1
0014000000aSxV7AAK 1
0014000000aSxV8AAK
0014000000aSxV9AAK 1
0014000000aSymRAAS 1
0014000000aSzUuAAK 1 1
0014000000aT8BtAAK 1 1 1
0014000000aT8o0AAC 1 1 1 1
0014000000aT8yyAAC 1 1
0014000000aT8yzAAC
0014000000aT8zRAAS 1
0014000000aT8zSAAS
0014000000aTAkVAAW 1
0014000000aTBC4AAO 1 1
0014000000aTgnOAAS 1
0014000000aTgrpAAC 1 1
0014000000aTijRAAS 1 1
0014000000aTJOGAA4 1
0014000000aTNRPAA4 1 1 1