Ver Mensaje Individual
  #2 (permalink)  
Antiguo 05/02/2010, 09:50
jurena
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 7 meses
Puntos: 300
Respuesta: selects y counts anidados

No nos dices nada de si los resultados en las dos primeras son para equipo o para usuario. Sea lo que sea sólo tienes que agrupar o por equipo o por usuario y añadir un inner join con la tabla de equipos, si es para equipo.


1) Select e.nombre_equipo, COUNT(p.id_producto) totalprodnousados FROM equipo e INNER JOIN users u ON e.user_id = u.id INNER JOIN compras c ON c.id_user = u.id INNER JOIN producto p ON c.id_producto = p.id_producto WHERE p.estado = 0 GROUP BY e.id

2) imagino que id_fecha es un campo de tipo DATE… y que lo que buscas son los puntos de un día, el de hoy.
Select e.nombre_equipo, SUM(r.puntos) totpuntoshoy FROM equipo e INNER JOIN users u ON e.user_id = u.id INNER JOIN compras c ON c.id_user = u.id INNER JOIN producto p ON c.id_producto = p.id_producto INNER JOIN rangking r ON r.id_equipo = e.id WHERE p.id_fecha = CURDATE() GROUP BY e.id

3) Todos los puntos de un equipo
Select e.nombre_equipo, SUM(r.puntos)Totalpuntoshastahoy FROM equipo e INNER JOIN users u ON e.user_id = u.id INNER JOIN compras c ON c.id_user = u.id INNER JOIN producto p ON c.id_producto = p.id_producto INNER JOIN rangking r ON r.id_equipo = e.id GROUP BY e.id

No he probado nada