Mettre à jour une table dans une instruction multi-jointure dans MySQL
La mise à jour d'une table jointe dans MySQL peut être difficile lorsque la table que vous souhaitez la mise à jour n'est pas la première de la chaîne de jointure. Cet article explique comment surmonter cet obstacle en utilisant la syntaxe UPDATE non conventionnelle de MySQL.
Syntaxe non conventionnelle pour la mise à jour multi-tables
Contrairement à la syntaxe de Microsoft SQL Server, la mise à jour de MySQL avec JOIN L'instruction ne nécessite pas de spécifier la table à mettre à jour dans la clause FROM. Au lieu de cela, il utilise implicitement la table spécifiée dans la clause SET.
Exemple
L'exemple fourni tente de mettre à jour la tableB en fonction des valeurs des tablesA et tableC :
UPDATE tableB FROM tableA JOIN tableB ON a.a_id = b.a_id JOIN tableC ON b.b_id = c.b_id SET b.val = a.val+c.val WHERE a.val > 10 AND c.val > 10;
Points clés
En adhérant à la syntaxe unique de MySQL, les utilisateurs peuvent mettre à jour avec succès les fichiers joints. tables même lorsque la table cible n'est pas la première de la chaîne de jointure.
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!