上周每位玩家的平均游戏数

Posted

技术标签:

【中文标题】上周每位玩家的平均游戏数【英文标题】:average no of games per player in last week 【发布时间】:2012-09-17 07:59:17 【问题描述】:

如何计算从给定日期开始过去一周每位玩家的平均游戏数。 例如我的桌子包括

DateId       UserId        GameId
30-aug-2012  3             89
31-aug-2012  2             32
1-sep-2012   1             53
1-sep-2012   2             56
1-sep-2012   1             32
7-sep-2012   3             56

因此,结果应该是 - 一周(2012 年 9 月 1 日至 2012 年 9 月 7 日)的(总游戏数)/(总玩家数) 即 3/3 = 1

【问题讨论】:

【参考方案1】:

试试这个:

select COUNT (distinct GameId)/COUNT(distinct UserId)
from   your_table
where  DateId>DATEADD(DD,-7,'7-sep-2012')

【讨论】:

如果我必须为每个日期都这样做...例如 DateId x,它应该在 x-7 和 x 之间...对于 DateId x-1,它应该在(x-1)-7 和 (x-1)。我必须从给定的 DateId 对过去一周的数据进行分组。 @user1664644:对不起,我没听懂你……你的意思是像一个滚动的 7 天窗口? 是的...我需要从给定的 DateId 考虑过去一周。基本上是滚动的一周。 @user1664644 : BETWEEN (x-1)-7 AND (x-1) 涵盖 8 天,而不是 7 天。此外,您是否请求提供参数的能力,从而能够根据不同的参数查询不同的星期? (请具体,并在您的问题中包含所有相关信息 - 不是 cmets。) @user1664644:那你有没有试过我对你上一个问题的回答?那里有什么问题?几乎一样的东西..那里 //***.com/questions/12401869/…

以上是关于上周每位玩家的平均游戏数的主要内容,如果未能解决你的问题,请参考以下文章

黄金点

黄金点

黄金点游戏(结对项目)

黄金点游戏(结对编程项目)

结对项目--黄金点游戏

黄金点结对项目