Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/04/2005, 23:20
safe
 
Fecha de Ingreso: enero-2003
Ubicación: Córdoba, Argentina
Mensajes: 1.047
Antigüedad: 21 años, 3 meses
Puntos: 10
SUM() que sea multiplo de 3 y algo mas

Recurro ha ustedes porque necesito pasar algo que hasta ahora realizaba con PHP pero que estoy casi seguro que se puede hacer directamente en la consulta SQL ahorrando bastante tiempo y codigo. Pero, obviamente, mis conocimientos no me permiten llegar a la solucion deseada.

El tema es el siguiente: tengo una tabla donde guardo datos de jugadores de un torneo de futbol fecha a fecha. La estructura de la tabla "estadisticas" de la base (Mysql por cierto) es mas o menos asi:

-------------------------------------------------------
id | jugador | equipo | fecha | dato | valor | campeonato
-------------------------------------------------------

Donde fecha no es la de dia sino la fecha del torneo (1º fecha, 2º fecha, etc).
Hay 3 tipos de "dato": 1 = goles - 2 = tarjetas rojas - 3 = amarillas los cuales van acompañoados de sus valores correspondientes (dato: 1 y valor: 2 == 2 goles).

y lo que yo necesito hacer es sacar todos los jugadores donde la suma de los distintos "valor" correspondientes al dato 3 sea multiplo de 3 y que la fecha del ultimo dato sea igual a la variable $fecha_actual.

No se si sere claro ...

Hasta ahora lo que hacia era sacar todos los datos asi

Código:
$sql="SELECT estadisticas.jugador, estadisticas.fecha,  ";
$sql.="jugadores.nombre, equipos.nombre as nombre_equipo, grupo, SUM(valor) as total ";
$sql.="FROM estadisticas ";
$sql.="LEFT JOIN equipos ON (estadisticas.equipo = equipos.id) ";
$sql.="LEFT JOIN jugadores ON (estadisticas.jugador = jugadores.id) ";
$sql.="WHERE estadisticas.dato='3' and fecha<='$fecha_actual' ";
$sql.="and estadisticas.campeonato='$torneo_actual' and grupo='A' ";
$sql.="GROUP BY jugador ";
$sql.="ORDER BY total DESC, grupo ASC, jugador ASC, fecha DESC ";
y guardaba la info en un array segun algunos condicionales, pero eso me parece muy impractico y seguramente consume muchos recurso.

Si alguien tiene alguna idea se la agradesco desde ya.
__________________
oohh... quisiera ser godines!!!