我试图创建一个频率分布显示有多少客户交易1X,2X,3X等如何创建频率分布?
我有一个数据库transactions
和列user_id
。每行表示一个事务,并且如果user_id出现在多行中,则该用户已经完成多个事务。
现在我想获得一个看起来像这样的列表:
Tra. | Freq.
0 | 345
1 | 543
2 | 45
3 | 20
4 | 0
5 | 3
etc
目前我有这一点,但它只是显示用户的列表,以及有多少交易,他们都有过。
SELECT user_id, COUNT(user_id) as number_of_transactions
FROM transactions
GROUP BY user_id
ORDER BY number_of_transactions DESC;
我做了一些挖掘,并建议generate_series
可能有帮助,但我坚持,不知道如何前进。
提示:你需要的是频率的频率。 (你需要一个额外的聚合层) – wildplasser