Mise à jour basé sur, sélectionnez à la même table, encore et ENCORE

Dans Microsoft SQL Server:

J'ai vu cette question plusieurs fois, mais ne peut pas voir quelqu'un pour résoudre le problème:

UPDATE theTable t1
SET t1.col2 =
    (SELECT (10 * (col1 + col2))
     FROM theTable t2
     WHERE t1.busRelAccount = t2.busRelAccount
     AND t2.rowName = 'POS'
    )
WHERE t1.busRelAccount = t2.busRelAccount
AND t1.rowName = 'INVENTORY'
;

Toute personne ayant résolu ce problème sans l'aide du CURSEUR et de la boucle de la table?

Bienvenue sur StackOverflow: si vous publiez du code XML ou des échantillons de données, veuillez mettre en évidence les lignes dans l'éditeur de texte et cliquez sur le "code d'échantillons" ( { } ) sur la barre d'outils editeur de bien le format et la surbrillance de la syntaxe!

OriginalL'auteur Blue high Mountain | 2012-06-13