【发布时间】:2020-10-07 18:30:26
【问题描述】:
因此,为简单起见,只需考虑 account_id 和 date 列。到现在为止,您可能已经理解每条记录代表一个玩家在特定的一天玩某个游戏。我要提取的是每个用户从上一场比赛开始倒数最近 15 天的活动。例如,我们的数据范围从 2020 年 4 月 4 日到 2020 年 9 月 24 日,假设用户在 2020 年 9 月 20 日玩了他的最后一场游戏,并且从那以后没有玩任何游戏,所以对于那个用户,我想要他的游戏活动日期从 9 月 5 日到 20 日(距离他上一场比赛的前 15 天),我想为每个用户提取相同的数据。
我最初想像这样实现......根据日期按降序对表格进行排序,并在 account_id 第一次出现时将日期与该特定帐户匹配(以创建一个字典,其中的键是 account_id 并且 value 是他玩的最后日期),这样我就可以从 value 中减去 15 天并过滤每个 account_id 的数据,但我的同事对此并不满意,并希望一次完成所有这些(使用 SQL 查询)。有人可以指导我如何做到这一点。在此先感谢:)
【问题讨论】:
标签: mysql sql datetime max window-functions