Ver Mensaje Individual
  #9 (permalink)  
Antiguo 18/12/2008, 10:12
jurena
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: como puedo hacer esta consulta

La consulta es muy simple. Lo que sucede es que quizás no estás acostumbrado a los cruces de tablas mediante INNER JOIN. Piensa que en cada una de las tablas hay un primary key y que en las demás tablas hay foreign keys, referidas a las primary keys de esas tablas. Un ejemplo, si la tabla equipo tiene un id_equipo que es primary key, auto_increment y todo lo demás, y pongamos por ejemplo que el equipo cuyo id_equipo es el equipo "pilotos del norte", todo piloto que pertenezca a ese equipo debe tener en la tabla pilotos el refidequipo con valor 1. Pues bien para traerte junto con el corredor el nombre de su equipo tendrás que hacer un INNER JOIN entre las tablas en el que el refidequipo de pilotos sea igual al id_equipos de equipo
eso lo haces así:


SELECT pilotos.piloto, equipos.equipo from pilotos inner join equipos on equipos.id_equipo = pilotos.refidequipo
y así con las demás...

Por lo demás, la consulta es una consulta mediante agrupación GROUP BY, que saca la suma de puntos SUM(puntos), pero con una restricción, que se refieren a la carrera 2, lo del WHERE...

Pero si tienes dificultades, dinos primero cómo has creado tus tablas y la naturaleza de los campos, para que con eso podamos ayudarte.