Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comment utiliser une variable de table dans une mise à jour à partir d'une requête select ?

Vous avez alias @CurrentItems avec CI alors utilisez simplement CI :

UPDATE U SET U.Units = U.Units + CI.ItemUnits
    FROM @CurrentItems CI INNER JOIN U ON U.UId=CI.ItemId;

Jetez également un œil à votre requête, vous avez quelque chose comme U.UId = CU.ItemID . Qu'est-ce que le CU ? Vous avez créé un alias pour @CurrentItems avec CI, alors quel est le but de CU ? S'il s'agit d'une erreur, juste une faute de frappe assurez-vous de changer toute référence à CU avec CI .

Vous ne nous dites pas non plus ce que U c'est, j'espère que c'est une table valide.