Ver Mensaje Individual
  #6 (permalink)  
Antiguo 04/05/2018, 14:40
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: Como sumar carreras en beisbol

Hola Julia 2021:

En realidad, lo que propone el compañero Libras, también se puede hacer, aunque hay un pequeño detalle con la consulta y es que el SUM debería de ir fuera del CASE-WHEN y hay que agregar una condición WHERE para filtrar los datos

Código MySQL:
Ver original
  1. mysql> SELECT * FROM tabla;
  2. +------------+------------------+-------------------+-------------------+--------------------+
  3. | jornada    | id_team_homeclub | id_team_visitante | carreras_homeclub | carreras_visitante |
  4. +------------+------------------+-------------------+-------------------+--------------------+
  5. | 2018-01-06 | TEAM_1           | team_2            |                 5 |                  2 |
  6. | 2018-01-07 | TEAM_1           | team_3            |                 4 |                  7 |
  7. | 2018-01-08 | TEAM_1           | team_4            |                 1 |                  0 |
  8. | 2018-01-09 | team_2           | TEAM_1            |                 0 |                  1 |
  9. | 2018-01-10 | team_2           | team_3            |                 5 |                  6 |
  10. | 2018-01-11 | team_2           | team_4            |                 1 |                  1 |
  11. | 2018-01-12 | team_3           | TEAM_1            |                 2 |                  3 |
  12. | 2018-01-13 | team_3           | team_2            |                 1 |                  3 |
  13. | 2018-01-14 | team_3           | team_4            |                 2 |                  4 |
  14. | 2018-01-15 | team_4           | TEAM_1            |                 1 |                  1 |
  15. | 2018-01-16 | team_4           | team_2            |                 3 |                  1 |
  16. | 2018-01-17 | team_4           | team_3            |                 2 |                  2 |
  17. +------------+------------------+-------------------+-------------------+--------------------+
  18. 12 rows in set (0.00 sec)
  19.  
  20. mysql>  SELECT
  21.     -> SUM(CASE WHEN  id_team_homeclub  = 'TEAM_1'
  22.     ->     THEN carreras_homeclub  ELSE 0 END) AS homeclub,
  23.     -> SUM(CASE WHEN  id_team_visitante = 'TEAM_1'
  24.     ->     THEN carreras_visitante ELSE 0 END) AS visitante
  25.     -> FROM tabla
  26.     -> WHERE    id_team_homeclub = 'TEAM_1'
  27.     ->       OR id_team_visitante = 'TEAM_1';
  28. +----------+-----------+
  29. | homeclub | visitante |
  30. +----------+-----------+
  31. |       10 |         5 |
  32. +----------+-----------+
  33. 1 row in set (0.00 sec)

Como verás, en realidad no hay necesidad de hacer agrupación, ya que estás filtrando en el WHERE. Haz la prueba y nos comentas.

Saludos
Leo.