一、连续登录问题
- 关键逻辑:
连续日期(如 2023-01-01、2023-01-02、2023-01-03)减去各自的排序序号(1、2、3)后,结果都是 2023-12-31,因此会被分到同一组
通过分组统计天数,即可筛选出连续登录的用户
2、总结:整个代码的逻辑链
去重:先处理 “同一用户同一天多次登录”,避免重复统计;
排序:给每个用户的登录日期按时间编序号,为后续 “连续判断” 做准备;
分组标识:通过 “日期 - 序号” 的固定值,将连续日期归为同一组(核心技巧);
聚合筛选:按组统计连续天数,筛选出符合 “≥3 天” 条件的用户。