disons que j'ai select, qui me renvoie de table1:
ID Name
1 Bob
2 Alice
3 Joe
Ensuite, je veux mettre à jour les valeurs dans une autre table en fonction de ce résultat:
UPDATE table2 SET Name = table1.Name WHERE ID = table1.ID
Comme je l'ai compris, je ne peux faire de sélection interne qu'en un seul endroit, comme:
UPDATE table2 SET Name = (select Name from table1) WHERE ...
Et je ne sais pas comment spécifier la condition OERE.
tout ce que vous devez faire est simplement de rejoindre les tables comme ceci.
UPDATE table2 t2
JOIN table1 t1 ON t1.id = t2.id
SET t2.name = t1.name;
si vous êtes prêt à le faire avec une sélection, vous pouvez le faire comme ça.
UPDATE table2 t2,
( SELECT Name, id
FROM table1
) t1
SET t2.name = t1.name
WHERE t1.id = t2.id