Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/03/2011, 21:13
oms02
 
Fecha de Ingreso: junio-2010
Mensajes: 373
Antigüedad: 14 años, 7 meses
Puntos: 11
update a tres tablas con inner join

Hola a todos.

Tengo una duda con un update a tres tablas relacionadas mediante el ID (de usuario).

Hasta hace nada lo hacia mediante un metodo bastante basico:
Código MySQL:
Ver original
  1. UPDATE tabla1, tabla2, tabla3
  2.         SET tabla1.campo1 = '$...', tabla2.campo2 = '$...', tabla3.campo3='$...'
  3.         WHERE (tabla1.ID = '$ID' AND tabla2.ID = tabla1.ID AND tabla3.ID = tabla1.ID)


pero he leido que no es el metodo mas adecuado para hacerlo.

En lugar de eso, (creo) se proponen INNER JOIN.

Creo que con esto, ahora quedaria asi:
Código MySQL:
Ver original
  1. UPDATE tabla1
  2.         INNER JOIN tabla2 ON tabla1.ID = tabla2.ID
  3.         INNER JOIN tabla3 ON tabla1.ID = tabla3.ID
  4.         SET tabla1.campo1='$...', tabla2.campo2='$...', tabla3.campo3='$...'  
  5.         WHERE tabla1.ID = '$ID'";


(probaria el ejemplo sin preguntar pero el codigo php es bastante mas largo y aun estoy haciendolo)

Queria preguntar si es este el "metodo bueno" o si se puede mejorar.

1 saludo y gracias!

Última edición por gnzsoloyo; 08/02/2014 a las 22:20