Re: Resumen de PHP, Vol 60, Envío 3

Juan Manuel Doren jm.doren en ok.cl
Sab Nov 22 18:17:12 CLST 2008


>> jugador puede tener X amarillas y X rojas clarammente, pero necesito saber
>> la sumatoria de cada id_equipo de amarillas y aparte el de rojas...se
>> entiende? Como lo puedo hacer? Es decir, lo que necesito es tener la
>> cantidad de amarillas y de rojas por equipo y no por jugador para una
>> estadistica general.

> select e.equipo, sum(j.goles) as goles, sum(j.amarillas) as amarillas,
> sum(j.rojas) as rojas from mundial_jugadores j, mundial_equipos e
> where e.id = j.id_equipo group by e.equipo;

Esa solucion es buena cuando las consultas son pocas, ya que cada vez
que alguien consulta la cantidad hay que volver a sumar y sumar y
sumar y sumar ( una perdida de recursos para obtener miles de veces el
mismo resultado )

un tecnica que puede servir para muchas consultas es tener una tabla
resumen ( o columnas en la tabla de equipos) con la sumatoria de las
amarillas, rojas y goles de cada equipo
cuando se suma una amarilla ( o roja o gol ), se suma tambien en la
tabla resumen. Asi se consulta solo una tabla y una fila dentro de
ella, en el otro caso se consultan n filas segun el numero de
jugadores inscritos en el equipo

para no olvidarse de siempre sumar recurrimos a nuestros amigos los
triggers que lo haran automagicamente....


Más información sobre la lista de distribución PHP