Thread Safe
Для многопоточного решения у меня не сработало ни одно из предложенных решений ( некоторые строки обновлялись более одного раза при его одновременном выполнении ).
Это сработало:
UPDATE Account
SET sg_status = 'A'
WHERE AccountId =
(
SELECT TOP 1 AccountId
FROM Account WITH (UPDLOCK) --this makes it thread safe
ORDER BY CreationDate
)
Если вы хотите вернуть какой-то столбец обновленного элемента, вы можете указать это в своем заявлении об обновлении: OUTPUT INSERTED.AccountId
(между SET
и WHERE
)