Maison > base de données > tutoriel mysql > Comment mettre à jour dynamiquement des colonnes dans MySQL à l'aide d'INNER JOIN ?

Comment mettre à jour dynamiquement des colonnes dans MySQL à l'aide d'INNER JOIN ?

DDD
Libérer: 2025-01-17 05:06:09
original
485 Les gens l'ont consulté

How to Dynamically Update Columns in MySQL Using INNER JOIN?

MySQL met à jour dynamiquement les données des colonnes de table associées

Cet article décrit comment utiliser INNER JOIN dans MySQL pour mettre à jour dynamiquement les colonnes de la table cible. Notre objectif est de mettre à jour la valeur de la colonne correspondante dans la table source (tableA) vers la colonne de la table cible (tableB) en fonction de l'attribut de nom partagé.

Peut être réalisé en utilisant l'instruction UPDATE suivante :

<code class="language-sql">UPDATE tableB
INNER JOIN tableA ON tableB.name = tableA.name
SET tableB.value = tableA.value
WHERE tableA.name = 'Joe';</code>
Copier après la connexion

Avec la clause INNER JOIN, nous établissons une relation entre deux tables basée sur l'attribut name, garantissant que seuls les enregistrements correspondants sont mis à jour.

En plus des opérations de mise à jour de base, la valeur dans tableB.value peut également être modifiée dynamiquement en fonction des conditions dans tableA.value. Par exemple :

<code class="language-sql">UPDATE tableB
INNER JOIN tableA ON tableB.name = tableA.name
SET tableB.value = IF(tableA.value > 0, tableA.value, tableB.value)
WHERE tableA.name = 'Joe';</code>
Copier après la connexion

Cette instruction met à jour uniquement la valeur de tableA.value dans la colonne tableB.value lorsque tableA.value est supérieure à 0. Sinon, il conserve la valeur d'origine dans la colonne tableB.value. En combinant une telle logique conditionnelle, des tâches de manipulation de données plus complexes peuvent être réalisées.

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!

source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal