Joindre des tables pour mettre à jour les enregistrements MySQL
Lorsque vous traitez plusieurs tables dans une base de données, il est souvent nécessaire de mettre à jour les enregistrements en fonction des valeurs d'une autre tableau. Cet article montre comment effectuer de telles mises à jour dans MySQL à l'aide d'une seule requête.
Considérez le scénario suivant : vous disposez de deux tables, l'une avec des valeurs SUBST_ID et CREATED_ID, et l'autre avec des valeurs SERIAL_ID et des valeurs BRANCH_ID vides. Vous souhaitez mettre à jour la colonne BRANCH_ID de la deuxième table avec les valeurs CREATED_ID correspondantes de la première table.
Pour y parvenir, vous pouvez utiliser une opération de jointure entre les deux tables sur les colonnes SERIAL_ID et SUBST_ID correspondantes. La requête suivante illustre la solution :
UPDATE TABLE2 JOIN TABLE1 ON TABLE2.SERIAL_ID = TABLE1.SUBST_ID SET TABLE2.BRANCH_ID = TABLE1.CREATED_ID;
Dans cette requête, l'instruction UPDATE met à jour la table TABLE2, en la joignant à la table TABLE1 à condition que SERIAL_ID et SUBST_ID correspondent. La clause SET définit la colonne BRANCH_ID de TABLE2 sur la colonne CREATED_ID correspondante de TABLE1.
En exécutant cette requête, vous mettrez à jour avec succès toutes les lignes de TABLE2 avec les valeurs CREATED_ID appropriées de TABLE1, garantissant ainsi la cohérence des données entre les deux. tableaux.
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!