Aqui está uma consulta para obter o tempo médio de configuração e o tempo de jogo para cada jogo, espero que ajude:
SELECT
gameName,
AVG(UNIX_TIMESTAMP(startPlay) - UNIX_TIMESTAMP(beginSetup)) AS setupTime,
AVG(UNIX_TIMESTAMP(gameEnd) - UNIX_TIMESTAMP(startPlay)) AS gameTime,
AVG(UNIX_TIMESTAMP(gameEnd) - UNIX_TIMESTAMP(beginSetup)) AS totalTime,
FROM `table`
GROUP BY gameName
ORDER BY totalTime DESC;
Deve produzir resultados semelhantes a:
+----------+-----------+-----------+-----------+
| gameName | setupTime | gameTime | totalTime |
+----------+-----------+-----------+-----------+
| chess | 1100.0000 | 1250.0000 | 2350.0000 |
| checkers | 466.6667 | 100.5000 | 933.3333 |
+----------+-----------+-----------+-----------+
Acabei de inserir cerca de 8 linhas de teste com alguns dados aleatórios para que meus números não façam sentido, mas esse é o resultado que você obteria.
Observe que isso verificará toda a sua tabela, de modo que pode demorar um pouco, dependendo de quantos registros você possui nessa tabela. É definitivamente algo que você deseja executar em segundo plano periodicamente se tiver uma quantidade considerável de registros de jogos.