我有一个user_ids
,subscription_tier
,activity_date
(这是用户处于活动状态的每个日期)的表。我将如何构建一个表,该表将为每个用户显示他们在各层之间的移动和日期。
仅当用户未移至他们以前所在的层时,才使用Min(activity_date)
和Max(activity_date)
。现实是人们一直在升级和降级。
我要创建的是一个包含列user_id
,subscription_tier
,tier_start_date
,tier_end_date
的表。
答案 0 :(得分:0)
您只想要`lead()吗?
select user_id, subscription_tier, activity_date as tier_start_date,
lead(activity_date) over (partition by user_id order by activity_date) as tier_end_date
from t;