如何获取SQL Server 2008中上次更新的行的ID

Bri*_*raj 1 sql sql-server-2008 sql-update

我有一个要求,我想获取表中最后更新行的ID,我想使用此id进行其他操作.

我没有像UpdatedOn这样的列,所以我可以引用该列.

那么还有任何函数,比如scope_identity和@@ identity(它给出了我最后插入行id的id).

请帮帮我.

Nit*_*rpe 10

你可以做这样的事情

declare @mytable as TABLE
    (
      Id int
    )

Update Table Set Name='Nitin'
OUTPUT INSERTED.Id into @mytable
 where LastName='Varpe'

 Select Id from @mytable
Run Code Online (Sandbox Code Playgroud)


Str*_*ner 6

由于您只对最后更新的ID感兴趣,因此可以将其简单地分配给SET子句中的变量:

DECLARE @LastID INT = NULL

UPDATE 
    SomeTable
SET
    SomeColumn = 'SomeValue',
    @LastID = ID
WHERE
    SomeOtherColumn = 'SomeOtherValue'
Run Code Online (Sandbox Code Playgroud)