Hola amiguitos, estoy super trancada con una consulta a una de mis tablas, les cuento:
Los equipos de beisbol a veces juegan como
home_club y otras veces como
visitantes.
Para ello tengo en una tabla las jornadas diarias de juegos y allí guardo la cantidad de carreras hechas tanto en calidad de home_club como visitantes, de la siguiente manera:
Código MySQL:
Ver original+------------+------------+--------+--------+-------+-------------------+-------------------+
| jornada | id_team_homeclub | id_team_visitante | carreras_homeclub | carreras_visitante|
+------------+------------+--------+--------+-------+-------------------+-------------------+
| 2018-01-06 | TEAM_1 | team_2 | 5 | 2 |
| 2018-01-07 | TEAM_1 | team_3 | 4 | 7 |
| 2018-01-08 | TEAM_1 | team_4 | 1 | 0 |
| 2018-01-09 | team_2 | TEAM_1 | 0 | 1 |
| 2018-01-10 | team_2 | team_3 | 5 | 6 |
| 2018-01-11 | team_2 | team_4 | 1 | 1 |
| 2018-01-12 | team_3 | TEAM_1 | 2 | 3 |
| 2018-01-13 | team_3 | team_2 | 1 | 3 |
| 2018-01-14 | team_3 | team_4 | 2 | 4 |
| 2018-01-15 | team_4 | TEAM_1 | 1 | 1 |
| 2018-01-16 | team_4 | team_2 | 3 | 1 |
| 2018-01-17 | team_4 | team_3 | 2 | 2 |
+------------+------------+--------+--------+-------+-------------------+-------------------+
Ahora deseo saber para un equipo específico (por ejemplo el team_1), el total de carreras que hizo en toda la temporada (como local y visitante), algo así como:
Código MySQL:
Ver original+-----------+-----------------------+--------------------+-------------+
| Equipo |subtotal_homeclub | subtotal_visitante | carrerastotales
+-----------+-----------------+-----------------+----------------------+
| team_1 | 10 | 5 | 15
+-----------+-----------------+-----------------+----------------------+
Les cuento que lo he logrado exitosamente con la siguiente consulta, pero quiero saber si esta bien así con los SELECT anidados o si existe otra forma mejor de hacer la consulta
Código PHP:
Ver originalSELECT subtotal_homeclub, subtotal_visitante, (subtotal_homeclub + subtotal_visitante) AS carrerastotales
FROM (SELECT SUM(carreras_homeclub) AS subtotal_homeclub FROM `jornadas` WHERE (id_team_homeclub = '1')) AS homeclub
(SELECT SUM(carreras_visitante) AS subtotal_visitante FROM `jornadas` WHERE (id_team_visitante = '1')) AS visitante