SELECT id,
name,
(SELECT AVG(score)
FROM Scores
WHERE Scores.player_id = Players.id AND
Scores.id IN (SELECT id
FROM Scores Sc
WHERE Sc.player_id = Players.id
ORDER BY timestamp DESC
LIMIT 5))
FROM Players;
2
SELECT p.id, p.name, avg(s.score)
FROM Players p
JOIN Scores s ON p.ID = s.Player_id
WHERE 4 < (SELECT count(*) from Scores s1 WHERE s.player_id = s1.player_id AND s.timestamp < s1.timestamp)
p.GROUP BY p.id
2 回答
这个怎么样...
这假设得分id字段是得分的id