Я хотел бы сделать это:
DECLARE @Id INT;
UPDATE Logins
SET SomeField = 'some value'
OUTPUT @Id = Id
WHERE EmailAddress = @EmailAddress -- this is a parameter of the sproc
Это вообще возможно? Я знаю, что могу объявить локальную табличную переменную и направить туда вывод, но я бы предпочел пропустить ее, если это возможно
SELECT
. Я получаю ошибку"A nested INSERT, UPDATE, DELETE, or MERGE statement is not allowed in a SELECT statement that is not the immediate source of rows for an INSERT statement."
Это довольно неудачно, потому что это действительно чистое решение, когда вы знаете, что влияете только на один ряд.