Maison > base de données > tutoriel mysql > Comment mettre à jour plusieurs tables avec des valeurs identiques dans MySQL ?

Comment mettre à jour plusieurs tables avec des valeurs identiques dans MySQL ?

Barbara Streisand
Libérer: 2024-11-02 20:36:03
original
1025 Les gens l'ont consulté

How to Update Multiple Tables with Identical Values in MySQL?

Mise à jour de plusieurs tables avec des valeurs identiques

Considérations sur les requêtes :

L'objectif est de mettre à jour deux tables, Table_One et Table_Two, avec des valeurs identiques pour des colonnes spécifiques (c'est-à-dire victoire, séquence et score) en fonction de critères spécifiques (c'est-à-dire ID utilisateur). Cependant, les tables présentent quelques différences : Table_Two n'a pas de champ de couvercle et leurs noms varient.

Approche de mise à jour multi-table :

MySQL offre la flexibilité d'effectuer plusieurs -mises à jour de la table via une seule requête. Cette approche exploite la puissance des jointures pour relier les tables en fonction de colonnes communes, permettant ainsi la mise à jour simultanée de plusieurs lignes dans les tables participantes.

Requête mise à jour :

<code class="sql">UPDATE Table_One a
INNER JOIN Table_Two b ON (a.userid = b.userid)
SET
  a.win = a.win+1, a.streak = a.streak+1, a.score = a.score+200,
  b.win = b.win+1, b.streak = b.streak+1, b.score = b.score+200
WHERE a.userid = 1 AND a.lid = 1 AND b.userid = 1;</code>
Copier après la connexion

Dans cette requête de mise à jour multi-table :

  • La clause INNER JOIN établit une relation entre les deux tables en fonction de la colonne userid.
  • La clause SET spécifie les colonnes et les mises à jour valeurs pour Table_One et Table_Two.

Limitations et alternatives :

Il est crucial de noter que les mises à jour multi-tables ne prennent pas en charge LIMIT. Par conséquent, la requête peut mettre à jour plus de lignes que prévu. Par conséquent, les transactions ou les procédures stockées peuvent être des solutions plus appropriées pour garantir que les deux mises à jour sont exécutées de manière atomique.

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal