SQL选择底部记录

Ric*_*ire 10 sql t-sql sql-server

我有一个查询,我希望检索最旧的X记录.目前我的查询类似于以下内容:

SELECT Id, Title, Comments, CreatedDate
FROM MyTable
WHERE CreatedDate > @OlderThanDate
ORDER BY CreatedDate DESC
Run Code Online (Sandbox Code Playgroud)

我知道通常我会删除'DESC'关键字以切换记录的顺序,但在这种情况下,我仍然希望获得最新项目的记录.

所以我想知道是否有任何方法可以执行此查询,以便我将最旧的X项目排序,以便最新的项目是第一个.我还应该补充一点,我的数据库存在于SQL Server 2005上.

Jas*_*yon 22

为什么不使用子查询?

SELECT T1.* 
FROM
(SELECT TOP X Id, Title, Comments, CreatedDate
FROM MyTable
WHERE CreatedDate > @OlderThanDate
ORDER BY CreatedDate) T1
ORDER BY CreatedDate DESC
Run Code Online (Sandbox Code Playgroud)