平均最大MYSQL

平均最大MYSQL,mysql,Mysql,我想选择2-3名球员的平均高分,但我不知道该怎么做 桌上比赛有id、球员、分数 我想通过id获得每个指定玩家的最高分数,然后计算这些返回分数的平均值 任何帮助都将不胜感激以下查询将返回每位玩家的最高分数: CREATE TABLE Match(Id integer PRIMARY KEY, score integer); /* Create few records in this table */ INSERT INTO Match VALUES(1,'10'); INSERT INTO Ma

我想选择2-3名球员的平均高分,但我不知道该怎么做

桌上比赛有id、球员、分数

我想通过id获得每个指定玩家的最高分数,然后计算这些返回分数的平均值


任何帮助都将不胜感激

以下查询将返回每位玩家的最高分数:

CREATE TABLE Match(Id integer PRIMARY KEY, score integer);

/* Create few records in this table */
INSERT INTO Match VALUES(1,'10');
INSERT INTO Match VALUES(2,'20');
INSERT INTO Match VALUES(3,'60');
INSERT INTO Match VALUES(4,'100');
INSERT INTO Match VALUES(5,'80');
COMMIT;


select m.*,
       (select sum(score)
        from (select score
              from Match s
              where s.id = s.id
              order by score desc
              limit 3
             ) s2
       ) as summax3
from Match m
SELECT *
FROM
    (
    SELECT `match`.id, `match`.score
    FROM `match`
    ORDER BY score DESC
    LIMIT 3
) AS high_scores
GROUP BY id
ORDER BY score DESC
要获得平均值:

SELECT AVG(score) AS average
FROM
    (
    SELECT `match`.id, `match`.score
    FROM `match`
    ORDER BY score DESC
    LIMIT 3
) AS high_scores

对所描述的目标至少有两种不同的解释。显示一些示例-源数据和希望实现的输出。