【发布时间】:2020-12-28 11:57:18
【问题描述】:
我有一张表,上面有一个活动日期,比如事情发生变化时
2020-08-13 123 Upgrade
2020-08-17 123 Downgrade
2020-08-21 123 Upgrade
基本上,就一条线而言,此帐户上发生了 3 项活动。他们有一个基本帐户,然后他们降级,然后他们再次升级
我希望这些发生在诸如
之类的步骤中2020-08-13 123 Upgrade1
2020-08-14 123 Upgrade1
2020-08-15 123 Upgrade1
2020-08-16 123 Upgrade1
2020-08-17 123 Downgrade1
2020-08-18 123 Downgrade1
2020-08-19 123 Downgrade1
2020-08-20 123 Downgrade1
2020-08-21 123 Upgrade2
.
.
.
2020-09-09 123 Upgrade2
然后我想按他们的活动对他们进行分区,并在最终结果中看到这一点,这样我就可以计算有多少用户在降级状态下停留了 30 天以上,以查看他们的行为与升级后的变化相比。
2020-08-13 123 Upgrade1. 1
2020-08-14 123 Upgrade1. 2
2020-08-15 123 Upgrade1. 3
2020-08-16 123 Upgrade1. 4
2020-08-17 123 Downgrade1. 1
2020-08-18 123 Downgrade1. 2
2020-08-19 123 Downgrade1. 3
2020-08-20 123 Downgrade1. 4
2020-08-21 123 Upgrade2. 1
.
.
.
2020-09-09 123 Upgrade2. 18
我尝试过 Coalesce 然后 row_num,但我不知道如何根据他们更改帐户状态的时间来划分每个活动。
【问题讨论】:
标签: sql date hive hiveql window-functions