【发布时间】:2022-01-13 10:54:18
【问题描述】:
我有一张如下表;
| user_id | status | month |
|---|---|---|
| 1 | frequent_user | 01.04.2020 |
| 1 | infrequent_user | 01.02.2020 |
| 2 | frequent_user | 01.06.2020 |
| 3 | frequent_user | 01.04.2020 |
| 3 | infrequent_user | 01.03.2020 |
| 3 | frequent_user | 01.06.2020 |
| 4 | frequent_user | 01.06.2020 |
问题是知道在 1m、2m、3m 内的任何时间点有多少新用户转换为frequent_user。 新用户意味着 f.e. user_id 1 在 01.02.2020 有第一个活动,所以它是那里的新用户。并在 2 个月内转换为frequent_user。还有一点,user_id 3 是 01.06.2020 的第二次frequent_user。但是,这不是我感兴趣的。我想第一次知道。
所以输出应该是这样的
| month | 1m | 2m | 3m | 4m |
|---|---|---|---|---|
| 01.02.2020 | 0 | 1 | 0 | 0 |
| 01.03.2020 | 1 | 0 | 0 | 0 |
| 01.06.2020 | 2 | 0 | 0 | 0 |
我不知道如何编写查询。非常感谢你的努力。欣赏任何见解。
【问题讨论】:
-
你能标记你的 RDBMS 吗?
-
user_id 2 和 4 会发生什么?没有记录他们何时从不经常使用的用户转换为经常使用的用户。您是否会在 1 个月内自动将这些案例计为转化?