这应该很容易,但我有麻烦。
我有一个 results
如下所示的表:
store_id cust_id spend_ind pct
200 2 A 0.33
200 2 B 0.33
200 3 A 0.33
300 1 A 0.50
300 100 B 0.50
400 2 A 0.33
400 2 B 0.33
400 5 B 0.33
请注意 pct
每个存储的列总和为1.0。以下是创建此表的代码:
CREATE TABLE results(
store_id int,
cust_id int,
spend_ind char,
pct float
);
INSERT INTO results VALUES(200,2,'A',0.33);
INSERT INTO results VALUES(200,2,'B',0.33);
INSERT INTO results VALUES(200,3,'A',0.33);
INSERT INTO results VALUES(300,1,'A',0.50);
INSERT INTO results VALUES(300,100,'B',0.50);
INSERT INTO results VALUES(400,2,'A',0.33);
INSERT INTO results VALUES(400,2,'B',0.33);
INSERT INTO results VALUES(400,5,'B',0.33);
我在创建一个新的类别时,尝试按商店,然后按客户id对结果进行分组 A&B
如果同一客户id同时具有 A
以及 B
特定商店的支出指标。以下是我试图输出的内容:
store_id spend_ind pct
200 A&B 0.66
200 A 0.33
300 A 0.50
300 B 0.50
400 A&B 0.66
400 B 0.33
例如,客户2有消费模式 A
以及 B
对于商店200,我们创建了一个新的类别 A&B
这就是 pct
任何有消费模式的客户的列 A
以及 B
.
1条答案
按热度按时间pu82cl6c1#
我可以这样说:
您可能希望通过另一个聚合级别按新类别对客户进行分组:
db小提琴演示