Ver Mensaje Individual
  #17 (permalink)  
Antiguo 26/05/2013, 07:44
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años, 2 meses
Puntos: 2658
Respuesta: Problema con INNER JOIN

Bueno, por empezar (ahora no tengo tiempo de verlo más profundamente, luego me pongo a analizar el resultado del query), al menos ya sabemos por qué se replicó la consulta:
¿Me puedes decir por qué pusiste el echo dentro del while?
Si te fijas con cuidado, yo lo puse inmediatamente después de cargar la consula en la variable y antes de enviarla a la base.

En definitiva, ese ha sido un fallo accidental, pero tenlo en cuenta: Las cosas no se ponen en cualquier parte...

Respecto al resultado de la consulta, lo que puedo ver es que te devuelve resultados indebidos o aparentemente duplicado, porque estás filtrando por id_ronda solamente, pero no lo estás haciendo por id_torneo, ni relacionando los torneos, con los que se retornan todas las rondas Nº 7, sin importar a qué torneo pertenecen... y eso no creo que esté bien.

Yo probaría esto:
Código MySQL:
Ver original
  1. FROM `torneos_enfrentamientos` TE
  2.     INNER JOIN `torneos_inscripcion` TI ON TI.`user_id` = TE.`user_id_1`
  3.     INNER JOIN `torneos_rondas` TR ON TR.`id_ronda` = TE.`id_ronda` AND TR.`id_torneo` = TE.`id_torneo`
  4. WHERE TE.`id_torneo` = '7';
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)