我有一张表,其中包含客户 ID、他们购买的产品、购买的时间戳和采购订单的等级。我想知道在 SQL 中是否有一种方法可以获取不同产品组合订购的总体百分比。产品可以多次购买。以下是一些示例问题:
在产品 A 之后购买产品 B 的时间百分比是多少? 在产品 A 之后购买产品 C 的时间百分比是多少? 在产品 B 之后购买产品 C 的时间百分比是多少?
我知道我可以使用
PRODUCT
和 RANK
列为不同的排列编写一堆 case 语句,但很好奇 SQL 中是否有更多的迭代类型方式。另外,我知道使用像 Python 这样的脚本语言会更容易,但我对 SQL 很好奇。
CUST_ID PRODUCT DATE RANK
1000000 Product A 2019-07-30 1
1000000 Product B 2019-11-27 2
1000000 Product B 2020-08-15 3
1000000 Product C 2020-11-07 4
1000001 Product A 2019-05-21 1
1000001 Product B 2019-08-26 2
1000001 Product C 2020-06-26 3
1000002 Product A 2020-06-28 1
1000002 Product A 2020-10-30 2
1000002 Product B 2020-11-23 3
1000003 Product C 2021-07-03 1
1000004 Product C 2021-07-04 2