sql >> Base de Datos >  >> RDS >> Mysql

Consulta mysql al tiempo promedio

Aquí hay una consulta para obtener el tiempo de configuración promedio y el tiempo de juego para cada juego, espero que ayude:

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;

Debería arrojar resultados similares a:

+----------+-----------+-----------+-----------+
| gameName | setupTime | gameTime  | totalTime |
+----------+-----------+-----------+-----------+
| chess    | 1100.0000 | 1250.0000 | 2350.0000 |
| checkers |  466.6667 |  100.5000 |  933.3333 |
+----------+-----------+-----------+-----------+

Acabo de insertar alrededor de 8 filas de prueba con algunos datos aleatorios, por lo que mis números no tienen sentido, pero ese es el resultado que obtendría.

Tenga en cuenta que esto escaneará toda su tabla, por lo que podría tomar un tiempo dependiendo de cuántos registros tenga en esta tabla. Definitivamente es algo que desea ejecutar en segundo plano periódicamente si tiene una cantidad considerable de registros de juegos.