Maison >base de données >tutoriel mysql >Comment puis-je mettre à jour plusieurs tables MySQL à l'aide d'un LEFT JOIN ?
Mise à jour de plusieurs tables à l'aide de LEFT JOIN dans MySQL
MySQL permet aux utilisateurs d'effectuer des mises à jour multi-tables à l'aide de différents types de jointures, notamment LEFT JOIN . Cependant, la syntaxe de telles mises à jour peut être insaisissable.
Syntaxe de mise à jour de plusieurs tables avec LEFT JOIN
Pour mettre à jour plusieurs tables à l'aide de LEFT JOIN, la syntaxe suivante peut être employé :
UPDATE t1 LEFT JOIN t2 ON t2.id = t1.id SET t1.col1 = newvalue WHERE t2.id IS NULL
Dans ce syntaxe :
Considérations relatives aux performances
Il est important de noter que les mises à jour de LEFT JOIN sont moins efficaces que l'utilisation de Syntaxe NOT IN pour sélectionner les données. Une meilleure approche pour identifier efficacement les commandes incomplètes, par exemple, consiste à utiliser la syntaxe suivante :
SELECT t1.* FROM t1 WHERE t1.id NOT IN ( SELECT id FROM t2 )
Cependant, pour les instructions UPDATE, MySQL n'autorise pas l'utilisation de la table cible dans une sous-requête. Par conséquent, la syntaxe LEFT JOIN, moins efficace, doit être utilisée pour les mises à jour multi-tables.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!