获取sql server中最后100个插入的记录

3 c# t-sql linq sql-server

我想在sql server 2008中检索最后100个插入的记录.

请更正我的代码.表中的Pkey testContext.testDetailRecords是一个标识列.

var pkeys = (from tests in testContext.testDetailRecords
                         where tests.Pkey > (select max(tests.Pkey)-100 from testContext.testDetailRecords))
                                select tests.Pkey).ToList();
Run Code Online (Sandbox Code Playgroud)

Jam*_*iec 5

怎么样

var pkeys = testContext.testDetailRecords
                 .OrderByDescending(x => x.PKey)
                 .Take(100)
                 .Select(x => x.PKey);
Run Code Online (Sandbox Code Playgroud)

这应该大致转换为SQL

SELECT TOP 100 PKey
FROM testDetailRecords
ORDER BY PKey DESC
Run Code Online (Sandbox Code Playgroud)