Certaines versions de Structured Query Language ( SQL) comme Oracle permettent l'utilisation de déclarations de mise à jour en utilisant un ensemble de valeurs sélectionnées au sein d'une sous requête. Une déclaration de mise à jour ainsi créée utilise généralement un sous requête contenant des valeurs d'une autre table . Les valeurs renvoyées par la sous sélectionner compléter l' état des déclarations de mise à jour. Autrement dit, une déclaration mise à jour fonde son état de mise à jour sur les valeurs sélectionnées à partir d'une autre table en une seule étape , au lieu de deux étapes. Instructions 
 1 
 créer la première partie de la déclaration de mise à jour des colonnes . La première partie d'une déclaration dans ce cas est de mettre à jour un nom de table spécifique attribuant des valeurs appropriées dans les colonnes comme ceci: 
 
 UPDATE  
  SET (  , < column_name > ) = 
  Remplacer  avec le nom de votre table à mettre à jour et  (ou noms) dans la colonne appropriée ( s) à mettre à jour . Cette méthode fonctionne pour les valeurs des colonnes simples ou multiples. . Les valeurs seront affectés à l'étape suivante en utilisant un sélectionner 
  Par conséquent, un exemple typique du monde réel pourrait être: 
 
 jour SET client ( account_no , invoice_amt ) = 
 2 
 Ajouter la deuxième partie de l' instruction à l'aide d'un sous- select. Le sous-sélection dans ce cas va chercher à mettre à jour les valeurs liées à la requête principale. Un exemple de cela est la suivante: 
 
 (SELECT  DE  OÙ    ) 
  Les nouvelles valeurs < . ; état > et  préciser l'état SQL à mettre en œuvre et de la valeur (s ) d'être affecté dans la sous- requête 
  Un exemple réel de la déclaration jusqu'à présent est : . 
 < p > Mise à jour SET client ( account_no , invoice_amt ) = (SELECT AccountNo , invoicecost FROM ventes WHERE PurchaseOrder = 123456) . 
 
 nombre des ayants droit de comptes et les montants des factures au numéro de compte , montant de la facture dans la table customer à la même valeurs contenues dans la table de vente, pour ordre d'achat 123456 . 
 3 
 remplir la déclaration de mise à jour . Cette étape spécifie les finales un critère important de mettre à jour la table de client pour le client correct, sinon tous les clients de la table seraient accidentellement mis à jour 
 
 La déclaration doit se terminer par : . 
 
 WHERE < ; column_name >   ; . 
  le nom de colonne spécifie le champ de fonder la mise à jour , la condition pour les critères et la valeur à comparer à l'affectation de mise à jour 
 < p > En termes réels , notre exemple peut maintenant être étendu à : 
 
 jour SET client ( account_no , invoice_amt ) = (SELECT AccountNo , invoicecost FROM ventes WHERE PurchaseOrder = 123456) OÙ customer_no = 457645 
 < p > Comme indiqué , cette assigne numéro de compte et le montant des factures au numéro de compte , montant de la facture dans le tableau à la clientèle pour les mêmes valeurs contenues dans le tableau des ventes , de l'ordre d'achat 123456. Enfin, le nombre de client dans la table client précise que cette requête ne devrait s'appliquer qu'aux numéro de client 457645 .