Hola DINASEN:
No nos explicas cómo están relacionadas tus tablas, pero siguiendo la estructura de tus tablas diría que el campo id_tabla2 corresponde justamente al id de la tabla2 y lo mismo para el id_tabla3 correcto???
Para hacer este tipo de actualizaciones debes hacer uso de INNER JOIN'S en el UPDATE, usando las mismas reglas del JOIN en el select, es decir más o menos así:
Código:
UPDATE tabla1 T1
INNER JOIN Tabla2 t2 on........
INNER JOIN Tabla3 t2 on........
SET T1.-------- = T2.--------
Si entendí bien el ejemplo quedaría más o menos así:
Código MySQL:
Ver original -> id_tabla2
INT, id_tabla3
INT); Query OK, 0 rows affected (0.12 sec)
-> (1, 'TRES', 2, 1), (1, 'CUATRO', 3, 2), (1, 'CINCO', 2, 2);
Query OK, 5 rows affected (0.04 sec)
+------+--------+-----------+-----------+
| id | nombre | id_tabla2 | id_tabla3 |
+------+--------+-----------+-----------+
| 1 | UNO | 1 | 1 |
| 1 | DOS | 1 | 2 |
| 1 | TRES | 2 | 1 |
| 1 | CUATRO | 3 | 2 |
| 1 | CINCO | 2 | 2 |
+------+--------+-----------+-----------+
Query OK, 0 rows affected (0.11 sec)
Query OK, 3 rows affected (0.08 sec)
+------+--------+
| id | nombre |
+------+--------+
| 1 | ONE |
| 2 | TWO |
| 3 | THREE |
+------+--------+
Query OK, 0 rows affected (0.11 sec)
Query OK, 3 rows affected (0.05 sec)
+------+--------+
| id | nombre |
+------+--------+
| 1 | AAAAA |
| 2 | BBBBB |
| 3 | CCCCC |
+------+--------+
-> SET T1.nombre
= CONCAT(T2.nombre
, ' ', T3.nombre
); Query OK, 0 rows affected (0.12 sec)
+------+-------------+-----------+-----------+
| id | nombre | id_tabla2 | id_tabla3 |
+------+-------------+-----------+-----------+
| 1 | ONE AAAAA | 1 | 1 |
| 1 | ONE BBBBB | 1 | 2 |
| 1 | TWO AAAAA | 2 | 1 |
| 1 | THREE BBBBB | 3 | 2 |
| 1 | TWO BBBBB | 2 | 2 |
+------+-------------+-----------+-----------+
Dale un vistazo a ver si es lo que necesitas y nos comentas.
Saludos
Leo