我有一个这样的表(此为样本数据):如何查找在特定时间范围内发生的条目?
user (int) | credits (int) | time (timestamp as bigint)
42 | 1000 | 1482015600 (18/12/2016 0:00:00)
42 | 1000 | 1482019200 (18/12/2016 1:00:00)
84 | 1000 | 1482022800 (18/12/2016 2:00:00)
84 | 1000 | 1482120000 (19/12/2016 5:00:00)
42 | 1000 | 1482130800 (19/12/2016 8:00:00)
我的网站上的彩票出现了问题,一些用户能够多打,每天一次(我有一个理论极限每24小时播放一次)。 我想找到不应该在那里的每个条目。
在我的例子中,我们可以看到用户42被骗,导致前两个条目是他在24小时的范围内玩两次。他在午夜和凌晨1点演奏。 玩家84没有作弊,他等了超过24小时才玩。 2016年12月19日,第42位球员再次出场,但这次不是一个骗子,因为他最后一次有效的比赛是在24小时前。
有没有办法在SQL中完成它?或者我应该调出PHP并迭代所有用户,并且写出一个糟糕的脚本? 谢谢!
请在问题中发布一些示例数据 – GurV
您在时间栏中存储什么值?如果他们是unix时间戳,则可以比较单个用户的两次差异与timestamp差异等于24小时 –
我已经添加了一些示例数据并重新编写了示例。谢谢你的时间! –