下面是一个现有表的示例(活动实例列除外)。我想activity_instance列创建/添加一个数字标识符,每次一个唯一的组合呈现在三个相邻的列为每个人(unique_id),即当unique_id,活动和日期匹配,它被分配的实例1为那个人,等等。相同的组合可能会在数据集中出现不止一次。
这个想法是为了区分哪些事件属于一起,哪些不属于。这个实例标识符应该是唯一的,在不同的案例和活动之间也是唯一的。
activity_instance3
usingdense_rank
:
select *
, dense_rank() over (partition by unique_id order by date,activity) as activity_instance
from tablename