【问题标题】:MySQL Query to list stat for total hits based on individual players & hits?MySQL Query 以列出基于单个玩家和命中的总命中统计?
【发布时间】:2014-07-27 11:22:23
【问题描述】:

好的,所以我有以下数据:

id    name     target
1     user1    user2
2     user3    user1
3     user3    user2
3     user3    user1

我想获得特定玩家的“最受打击”和“最受打击”的统计数据。

例如在上面的例子中,user3 对 user1 的点击次数最多(共 2 次)。因此,user1 的“最受打击”统计数据将是:

player   total_hits
user3    2

user3 的“最热门”统计数据是:

player   total_hits
user1    2

我假设的查询是这样的:

SELECT `target` FROM `hits` WHERE `name` = 'user1' GROUP BY `target`

但是完整的查询超出了我的范围;有什么想法吗?

【问题讨论】:

    标签: mysql select group-by statistics


    【解决方案1】:

    命中率最高

    SELECT `target` 
    FROM `hits` 
    GROUP BY `target`
    order by count(*) desc
    limit 1
    

    点击率最高

    SELECT name     
    FROM `hits` 
    GROUP BY name     
    order by count(*) desc
    limit 1
    

    查询几乎相同。它仅因您分组的列而异

    【讨论】:

    • 呃,这不只是计算总数而不是每个玩家吗?
    • 如果您只想要特定的播放器,请添加 WHERE 子句。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-22
    • 1970-01-01
    • 2011-06-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多