Dans les dernières versions de MySQL, vous pouvez effectuer une mise à jour croisée, également connue sous le nom de mise à jour de la table de corrélation où vous pouvez rejoindre deux ou plusieurs tables. À l'aide de MySQL JOIN (Inner et à gauche) et à mettre à jour la requête, nous pouvons effectuer une mise à jour croisée en étapes très simples.
Ce tutoriel vous guidera dans la façon d'effectuer des mises à jour de table croisée MySQL à l'aide de commandes MySQL natives.
Syntaxe de base
La syntaxe générale pour une requête de jointure de mise à jour MySQL de base est:
Mettre à jour DB.Tableau 1, DB.Tableau 2,Laissons décomposer la requête ci-dessus en parties plus petites afin que nous puissions mieux le comprendre.
Nous commençons par définir le tableau principal. Dans ce cas, (db.Tableau 1) suivi du tableau que nous voulons rejoindre en utilisant l'instruction de mise à jour, dans ce cas, DB.Tableau 2.
NOTE: Il est important de spécifier au moins une table après l'instruction de mise à jour; Sinon, les lignes du tableau ne mettront pas à jour après la requête.
Dans la deuxième partie de la requête, nous spécifions le type spécifique de jointure que nous voulons effectuer, je.e., Jointure intérieure ou gauche et un prédicat de jointure. Définissez toujours la requête de jointure immédiatement après la requête de mise à jour.
Un prédicat de jointure est une condition de jointure spécifique qui évalue à une valeur booléenne.
Dans la partie suivante, nous définissons de nouvelles valeurs sur les colonnes de DB.Tableau 1 et DB.Tableau 2.
Enfin, nous définissons une condition en utilisant la clause Where, qui aide à limiter les lignes qui subissent la mise à jour.
Exemple de cas d'utilisation
Supposons que vous ayez deux tables, appelées TB1 et TB2; Considérez une requête ci-dessous pour créer des tables et ajouter des données.
Créer une base de données s'il n'est pas existant Sample_DB;Dans les tableaux créés à l'aide de la requête ci-dessus, nous pouvons effectuer une requête de mise à jour à l'aide de l'instruction INTER JOIN car les tables sont liées sur COL2.
Considérez la requête ci-dessous:
Utilisez Sample_DB;Puisque nous voulons mettre à jour les données dans le deuxième tableau (COL3) où nous obtenons les valeurs des colonnes et multiplions par 5, dans l'exemple ci-dessus, nous supprimons la condition où nous voulons mettre à jour tous les enregistrements dans le tableau spécifié.
Vous pouvez confirmer cela à l'aide de la requête SELECT comme indiqué ci-dessous:
Sélectionner * dans Sample_DB.TB2;La sortie comme indiqué ci-dessous:
mysql> Sélectionner * dans Sample_DB.TB2;Conclusion
Dans ce tutoriel rapide, nous avons discuté de la façon d'utiliser la requête de jointure de mise à jour MySQL qui vous permet de combiner des tables et de mettre à jour les valeurs en conséquence.
Pour en savoir plus sur la façon dont vous pouvez étendre cette fonctionnalité, considérez les ressources fournies ci-dessous:
https: // dev.mysql.com / doc / Refman / 8.0 / en / mise à jour.html
https: // dev.mysql.com / doc / Refman / 8.0 / en / join.html