PHP: 8.1.33 | MySQL: 8.0.34

Evolución de los minutos por gol de Messi vs Cristiano en fase de grupos de Mundiales en la temporada actual

SELECT Periodo, ( SELECT SUM(Minutos1)/SUM(Goles1) FROM ( SELECT Periodo, SUM(Goles1) Goles1, SUM(Goles2) Goles2, SUM(Minutos1) Minutos1, SUM(Minutos2) Minutos2 FROM ( SELECT CASE WHEN idJugador = 1 THEN YEAR(Fecha)-(SELECT YEAR(FechaNacimiento) FROM mc_jugadores WHERE id = 1) + IF(DATE_FORMAT(Fecha,'%m-%d') >= DATE_FORMAT((SELECT FechaNacimiento FROM mc_jugadores WHERE id = 1),'%m-%d'), 0, -1) ELSE YEAR(Fecha)-(SELECT YEAR(FechaNacimiento) FROM mc_jugadores WHERE id = 2) + IF(DATE_FORMAT(Fecha,'%m-%d') >= DATE_FORMAT((SELECT FechaNacimiento FROM mc_jugadores WHERE id = 2),'%m-%d'), 0, -1) END Periodo, CASE WHEN idjugador = 1 THEN GolesJugador ELSE 0 END Goles1, CASE WHEN idJugador = 2 THEN GolesJugador ELSE 0 END Goles2, CASE WHEN idjugador = 1 THEN Minutos ELSE 0 END Minutos1, CASE WHEN idJugador = 2 THEN Minutos ELSE 0 END Minutos2 FROM mc_partidos_new T WHERE idJugador IN (1,2) AND T.Competicion IN ('Mundial', 'Copa Mundial de Fútbol') AND T.Ronda = 'Fase de grupos' AND ( (T.idJugador = 1 AND T.Temporada = (SELECT MAX(Temporada) FROM mc_partidos_new WHERE idjugador = 1)) OR (T.idJugador = 2 AND T.Temporada = (SELECT MAX(Temporada) FROM mc_partidos_new WHERE idjugador = 2)) ) ) x GROUP BY Periodo ) z WHERE z.Periodo <= y.Periodo ) Dato1, ( SELECT SUM(Minutos2)/SUM(Goles2) FROM ( SELECT Periodo, SUM(Goles1) Goles1, SUM(Goles2) Goles2, SUM(Minutos1) Minutos1, SUM(Minutos2) Minutos2 FROM ( SELECT CASE WHEN idJugador = 1 THEN YEAR(Fecha)-(SELECT YEAR(FechaNacimiento) FROM mc_jugadores WHERE id = 1) + IF(DATE_FORMAT(Fecha,'%m-%d') >= DATE_FORMAT((SELECT FechaNacimiento FROM mc_jugadores WHERE id = 1),'%m-%d'), 0, -1) ELSE YEAR(Fecha)-(SELECT YEAR(FechaNacimiento) FROM mc_jugadores WHERE id = 2) + IF(DATE_FORMAT(Fecha,'%m-%d') >= DATE_FORMAT((SELECT FechaNacimiento FROM mc_jugadores WHERE id = 2),'%m-%d'), 0, -1) END Periodo, CASE WHEN idjugador = 1 THEN GolesJugador ELSE 0 END Goles1, CASE WHEN idJugador = 2 THEN GolesJugador ELSE 0 END Goles2, CASE WHEN idjugador = 1 THEN Minutos ELSE 0 END Minutos1, CASE WHEN idJugador = 2 THEN Minutos ELSE 0 END Minutos2 FROM mc_partidos_new T WHERE idJugador IN (1,2) AND T.Competicion IN ('Mundial', 'Copa Mundial de Fútbol') AND T.Ronda = 'Fase de grupos' AND ( (T.idJugador = 1 AND T.Temporada = (SELECT MAX(Temporada) FROM mc_partidos_new WHERE idjugador = 1)) OR (T.idJugador = 2 AND T.Temporada = (SELECT MAX(Temporada) FROM mc_partidos_new WHERE idjugador = 2)) ) ) x GROUP BY Periodo ) w WHERE w.Periodo <= y.Periodo ) Dato2 FROM ( SELECT Periodo, SUM(Goles1) Goles1, SUM(Goles2) Goles2, SUM(Minutos1) Minutos1, SUM(Minutos2) Minutos2 FROM ( SELECT CASE WHEN idJugador = 1 THEN YEAR(Fecha)-(SELECT YEAR(FechaNacimiento) FROM mc_jugadores WHERE id = 1) + IF(DATE_FORMAT(Fecha,'%m-%d') >= DATE_FORMAT((SELECT FechaNacimiento FROM mc_jugadores WHERE id = 1),'%m-%d'), 0, -1) ELSE YEAR(Fecha)-(SELECT YEAR(FechaNacimiento) FROM mc_jugadores WHERE id = 2) + IF(DATE_FORMAT(Fecha,'%m-%d') >= DATE_FORMAT((SELECT FechaNacimiento FROM mc_jugadores WHERE id = 2),'%m-%d'), 0, -1) END Periodo, CASE WHEN idjugador = 1 THEN GolesJugador ELSE 0 END Goles1, CASE WHEN idJugador = 2 THEN GolesJugador ELSE 0 END Goles2, CASE WHEN idjugador = 1 THEN Minutos ELSE 0 END Minutos1, CASE WHEN idJugador = 2 THEN Minutos ELSE 0 END Minutos2 FROM mc_partidos_new T WHERE idJugador IN (1,2) AND T.Competicion IN ('Mundial', 'Copa Mundial de Fútbol') AND T.Ronda = 'Fase de grupos' AND ( (T.idJugador = 1 AND T.Temporada = (SELECT MAX(Temporada) FROM mc_partidos_new WHERE idjugador = 1)) OR (T.idJugador = 2 AND T.Temporada = (SELECT MAX(Temporada) FROM mc_partidos_new WHERE idjugador = 2)) ) ) x GROUP BY Periodo ) y ORDER BY Periodo