Maison >base de données >tutoriel mysql >Comment puis-je mettre à jour une table dans SQL à l'aide des valeurs jointes de plusieurs tables ?
Utilisation de JOIN pour mettre à jour la table SQL Server
L'utilisation de JOIN pour mettre à jour les tables de la base de données est une technique puissante pour modifier les données en fonction des relations entre plusieurs tables. Dans Microsoft SQL Server, l'instruction UPDATE peut être utilisée conjointement avec JOIN pour atteindre cet objectif.
Question :
Vous devez mettre à jour un champ dans la table "item_master" avec les valeurs JOIN de trois autres tables ("group_master", "Manufacturer_Master" et "item_master" lui-même).
Solution :
Étape 1 : Créer une requête JOIN
<code class="language-sql">SELECT im.itemid, im.sku AS iSku, gm.SKU AS GSKU, mm.ManufacturerId AS ManuId, mm.ManufacturerName, im.mf_item_number, mm.ManufacturerID FROM item_master im JOIN group_master gm ON im.sku = gm.sku JOIN Manufacturer_Master mm ON gm.ManufacturerID = mm.ManufacturerID WHERE im.mf_item_number LIKE 'STA%' AND gm.manufacturerID = 34;</code>
Cette requête récupère toutes les lignes correspondantes de trois tables et filtre en fonction de critères spécifiés.
Étape 2 : Mettre à jour les champs à l'aide de JOIN
L'instruction UPDATE suivante définit le champ "mf_item_number" de la table "item_master" à la valeur de "gm.SKU" en utilisant l'alias de la table (im, gm, mm) dans la clause JOIN :
<code class="language-sql">UPDATE im SET mf_item_number = gm.SKU FROM item_master im JOIN group_master gm ON im.sku = gm.sku JOIN Manufacturer_Master mm ON gm.ManufacturerID = mm.ManufacturerID WHERE im.mf_item_number LIKE 'STA%' AND gm.manufacturerID = 34;</code>
Instructions :
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!