Ce guide montre comment mettre à jour les enregistrements dans une table SQL (Sales_Import
) en utilisant les données correspondantes d'une autre table (RetrieveAccountNumber
), correspondant sur un LeadID
commun. Un défi courant consiste à mettre à jour AccountNumber
dans Sales_Import
en utilisant les valeurs de RetrieveAccountNumber
sans rencontrer de valeurs nulles. La solution utilise une instruction UPDATE
avec un JOIN
.
Mettre à jour efficacement les enregistrements avec les JOINs
La syntaxe UPDATE ... FROM ... JOIN
permet des mises à jour efficaces en combinant les données de plusieurs tables. Cette méthode garantit que seuls les enregistrements correspondants sont mis à jour.
MS SQL Serveur :
<code class="language-sql">UPDATE Sales_Import SET AccountNumber = RAN.AccountNumber FROM Sales_Import SI INNER JOIN RetrieveAccountNumber RAN ON SI.LeadID = RAN.LeadID;</code>
MySQL et MariaDB :
<code class="language-sql">UPDATE Sales_Import SI, RetrieveAccountNumber RAN SET SI.AccountNumber = RAN.AccountNumber WHERE SI.LeadID = RAN.LeadID;</code>
Explication :
UPDATE Sales_Import
: Ceci spécifie la table cible pour l'opération de mise à jour.SET AccountNumber = RAN.AccountNumber
: Ceci attribue le AccountNumber
de la table RetrieveAccountNumber
(RAN.AccountNumber
) à la colonne AccountNumber
de la table Sales_Import
.FROM Sales_Import SI INNER JOIN RetrieveAccountNumber RAN ON SI.LeadID = RAN.LeadID
(MS SQL) ou UPDATE Sales_Import SI, RetrieveAccountNumber RAN WHERE SI.LeadID = RAN.LeadID
(MySQL/MariaDB) : cela joint les deux tables basées sur le LeadID
, garantissant que seules les lignes avec correspondance Les identifiants sont mis à jour. La clause INNER JOIN
(MS SQL) ou WHERE
(MySQL/MariaDB) fait office de critère de correspondance.Cette approche résout directement le problème des valeurs nulles en mettant à jour uniquement les lignes où un LeadID
correspondant existe dans les deux tables. Cela se traduit par un processus de mise à jour plus propre et plus efficace.
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!