Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Wie verwende ich eine Tabellenvariable in einem Update aus einer ausgewählten Abfrage?

Sie haben @CurrentItems als Alias ​​verwendet mit CI Verwenden Sie also einfach CI :

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

Schauen Sie sich auch Ihre Abfrage an, Sie haben so etwas wie U.UId = CU.ItemID . Was ist CU? Sie haben mit CI einen Alias ​​für @CurrentItems erstellt, also was ist der Zweck von CU? Wenn dies ein Fehler ist, nur ein Tippfehler, stellen Sie sicher, dass Sie alle Verweise auf CU ändern mit CI .

Sie sagen uns auch nicht, was U ist ist, ich hoffe, das ist eine gültige Tabelle.